Function at 0x410be0
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x88
mov dword [esp + 0x20], ecx
mov ecx, dword [ebp + 0x14]
movsd xmm1, qword [ebp + 0x1c]
movaps xmm0, xmmword [0x441010]
mov eax, dword [0x44f834]
andps xmm0, xmm1
xor eax, ebp
mov dword [esp + 0x80], eax
lea eax, [esp + 0x68]
mov dword [esp + 0x38], eax
mov eax, dword [esp + 0x38]
lea eax, [esp + 0x60]
mov dword [esp + 0x68], 0
mov dword [esp + 0x7c], 0xf
mov dword [esp + 0x78], 0
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
mov edx, dword [ecx + 0x14]
mov ecx, edx
mov eax, edx
not ecx
or eax, 0xaf9db5b7
mov esi, eax
mov edi, ecx
and esi, 0x8eda6be
and edi, 0x50024840
or edi, esi
mov esi, edx
xor esi, 0x50624a48
and esi, edx
mov ebx, esi
and esi, 0xf7125941
not ebx
or eax, ebx
and ebx, 0x8eda6be
or esi, ebx
not eax
xor esi, edi
or eax, esi
mov esi, eax
and eax, 0x50627a48
not esi
and esi, 0xaf9d85b7
or eax, esi
mov esi, eax
and eax, edx
not esi
and ecx, esi
or eax, ecx
mov ecx, 0x35ea546e
not eax
or eax, esi
not eax
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x40]
cmp eax, 0x2000
sete byte [esp + 0x46]
mov al, byte [esp + 0x46]
mov eax, dword [esp + 0x40]
cmp eax, 0x3000
mov eax, 0x534e4360
sete byte [esp + 0x47]
ucomisd xmm0, qword [0x441020]
cmovbe ecx, eax
mov eax, 0xac1ebbbd
mov dword [esp + 0x2c], ecx
cmp eax, 0xbad0a9f
jg 0x410d0b
jmp 0x410f00
mov edi, dword [esp + 0x4c]
mov eax, 0x534e4360
nop
cmp eax, 0xbad0a9f
jle 0x410f00
cmp eax, 0x35ea546d
jle 0x410d40
cmp eax, 0x35ea546e
je 0x410fbe
cmp eax, 0x538d2727
je 0x411108
cmp eax, 0x534e4360
jne 0x410d00
jmp 0x41117d
cmp eax, 0xbad0aa0
je 0x411120
cmp eax, 0xec433f4
jne 0x410d00
movsd xmm0, qword [ebp + 0x1c]
lea eax, [esp + 0x5c]
mov dword [esp + 8], eax
movsd qword [esp], xmm0
call fcn.0042beb8
fstp st(0)
mov eax, dword [esp + 0x5c]
mov ecx, eax
neg ecx
test eax, eax
cmovns ecx, eax
imul eax, ecx, 0x7597
mov ecx, 0xa7c5ac5
shr eax, 5
mul ecx
shr edx, 7
add edx, dword [esp + 0x48]
mov eax, dword [0x450588]
mov dword [esp + 0x4c], edx
lea edx, [eax - 1]
imul edx, eax
mov eax, edx
or edx, 0x7fd6cf5d
not eax
mov esi, edx
and edx, 0x1e9285b4
or eax, 0x802930a2
not esi
mov ecx, eax
and esi, 0x80293002
and eax, 0x1e9285b4
not ecx
or esi, edx
and ecx, 0x61444a49
or ecx, eax
xor ecx, esi
mov eax, ecx
and ecx, 0x802930a2
not eax
and eax, 0x7fd6cf5d
or ecx, eax
mov edx, ecx
and ecx, 0xab5e6e92
not edx
mov eax, edx
and edx, 0x54a1916d
or eax, 1
or ecx, edx
mov esi, eax
mov edx, eax
not esi
and edx, 0x2e199816
and esi, 0xd1e667e8
or esi, edx
mov edx, ecx
xor ecx, 0x54a1916c
xor edx, 0x81466681
or eax, ecx
and ecx, 0x2e199816
and edx, 0xd1e667e9
not eax
or edx, ecx
xor edx, esi
or eax, edx
mov ecx, eax
not ecx
mov edx, ecx
and ecx, eax
and eax, 0xef9e119f
and edx, 0x1061ee60
or eax, edx
mov edx, eax
xor eax, 0x1061ee60
xor edx, 0xc2100115
mov esi, eax
and esi, 0x2dcf74aa
and edx, 0xd2308b55
or edx, esi
mov esi, ecx
and ecx, 0xd2308b55
not esi
or eax, esi
and esi, 0x2dcf74aa
or ecx, esi
not eax
xor ecx, edx
mov edx, dword [0x45058c]
or eax, ecx
sete al
setne cl
cmp edx, 9
setg ah
cmp edx, 0xa
setl dl
and al, ah
mov ch, dl
xor ch, cl
and cl, dl
xor ch, 1
or al, cl
or ch, ah
mov cl, al
mov dh, ch
xor cl, ch
xor dh, 1
xor cl, 1
mov dl, dh
and dl, ch
mov ebx, edx
xor dl, dh
xor bl, 1
or bl, ch
xor bl, 1
or bl, dl
xor bl, al
or al, dh
mov edx, 0xb218f76f
xor al, 1
or al, cl
mov ecx, eax
xor cl, bl
test al, 1
mov eax, 0xe0dd97a8
cmovne eax, edx
test bl, 1
cmove eax, edx
test cl, 1
mov edx, 0xe0dd97a8
cmove eax, edx
cmp eax, 0xbad0a9f
jg 0x410d0b
nop word [eax + eax]
cmp eax, 0xe0dd97a7
jg 0x410f60
cmp eax, 0xac1ebbbd
je 0x411146
cmp eax, 0xb218f76f
jne 0x410d00
movsd xmm0, qword [ebp + 0x1c]
lea eax, [esp + 0x5c]
mov dword [esp + 8], eax
movsd qword [esp], xmm0
call fcn.0042beb8
fstp st(0)
mov eax, dword [esp + 0x48]
mov eax, dword [esp + 0x48]
mov eax, dword [esp + 0x48]
mov eax, dword [esp + 0x48]
mov eax, 0xec433f4
cmp eax, 0xbad0a9f
jg 0x410d0b
jmp 0x410f00
cmp eax, 0xe0dd97a8
je 0x410cf6
cmp eax, 0xfdf30dbe
jne 0x410d00
mov eax, dword [esp + 0x28]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x24]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x40]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x54]
mov dword [esp + 8], eax
mov dword [esp + 4], edx
mov dword [esp], ecx
call fcn.00418e40
mov dword [esp + 0x48], eax
mov eax, 0x534e4360
mov ecx, 0x538d2727
cmp byte [esp + 0x46], 0
mov edi, dword [esp + 0x48]
jmp 0x41116a
mov eax, dword [0x450588]
lea ebx, [eax - 1]
imul ebx, eax
mov eax, ebx
mov ecx, ebx
or eax, 0xea18650
xor ecx, 0xf15e79af
mov edx, eax
mov esi, eax
and ecx, ebx
not edx
and esi, 0xedd4f207
and edx, 0x100a09a8
or edx, esi
mov esi, ecx
and ecx, 0x122b0df8
not esi
or eax, esi
and esi, 0xedd4f207
or ecx, esi
not eax
mov esi, 0xb218f76f
xor ecx, edx
or eax, ecx
mov ecx, eax
and eax, 0x5e87fea3
not ecx
and ecx, 0xa178015c
or eax, ecx
mov ecx, eax
xor eax, 0x502678f2
xor ecx, 0x9990209
mov edx, eax
and edx, 0xe662c5a4
and ecx, 0x199d3a5b
or ecx, edx
mov edx, ebx
and ebx, 0xe662c5a4
not edx
and edx, 0x199d3a5b
or edx, ebx
xor edx, ecx
mov ecx, dword [0x45058c]
not edx
or edx, eax
cmp edx, 0xffffffff
sete ah
setne dl
cmp ecx, 9
setg al
cmp ecx, 0xa
setl ch
mov cl, ch
xor cl, al
and cl, ch
mov dh, cl
mov ebx, ecx
xor dh, 1
or bl, dh
xor cl, bl
or bl, dh
mov dh, dl
xor cl, 1
xor bl, 1
or bl, cl
mov cl, dl
and dl, ch
mov ch, al
or dh, bl
xor cl, bl
xor ch, ah
xor cl, 1
xor dh, 1
and ch, al
and al, ah
and cl, bl
mov bl, dh
or al, dl
xor ch, 1
and bl, cl
xor cl, dh
xor al, 1
mov dl, ch
or cl, bl
xor dl, al
or al, ch
mov ebx, 0xec433f4
mov dh, cl
xor al, 1
xor dh, 1
or al, dl
and dh, cl
xor al, 1
mov ah, dh
xor dh, cl
and ah, cl
or dh, ah
mov ah, cl
xor dh, al
xor ah, al
or al, cl
xor al, 1
or al, ah
mov ecx, eax
xor cl, dh
test cl, 1
cmovne ebx, esi
test al, 1
mov eax, 0xec433f4
cmovne eax, ebx
test dh, 1
cmove eax, ebx
cmp eax, 0xbad0a9f
jg 0x410d0b
jmp 0x410f00
mov edi, dword [esp + 0x48]
mov eax, dword [esp + 0x2c]
cmp eax, 0xbad0a9f
jg 0x410d0b
jmp 0x410f00
mov eax, dword [ebp + 0x14]
mov ecx, dword [eax + 0x18]
mov eax, dword [eax + 0x1c]
mov dword [esp + 0x24], eax
mov dword [esp + 0x28], ecx
mov eax, 0xfdf30dbe
cmp eax, 0xbad0a9f
jg 0x410d0b
jmp 0x410f00
movzx eax, byte [esp + 0x47]
cmp byte [esp + 0x47], 0
mov eax, 0xbad0aa0
mov ecx, 0xfdf30dbe
mov dword [esp + 0x28], 0xffffffff
mov dword [esp + 0x24], 0xffffffff
cmovne eax, ecx
cmp eax, 0xbad0a9f
jg 0x410d0b
jmp 0x410f00
add edi, 0x32
mov dword [esp + 4], 0
mov dword [esp], edi
lea edi, [esp + 0x68]
mov ecx, edi
call fcn.00419110
sub esp, 8
mov esi, dword [esp + 0x50]
mov eax, dword [esp + 0x54]
mov eax, dword [ebp + 0x14]
mov eax, dword [eax + 0x14]
mov dword [esp + 8], 0x4c
mov dword [esp + 0xc], eax
lea eax, [esp + 0x60]
mov dword [esp + 4], eax
mov eax, dword [esp + 0x20]
mov dword [esp], eax
call fcn.00419390
mov dword [esp + 0x58], edi
mov edx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x78]
mov ebx, 0xc5bf5291
mov edi, dword [esp + 0x58]
cmp edx, 0xf
mov edx, 0xb86a72eb
mov dword [esp + 0x5c], edi
mov edi, 0x16192ea3
cmova edx, edi
cmp ebx, 0xb86a72eb
je 0x41122b
cmp ebx, 0x16192ea3
je 0x411218
cmp ebx, 0xc5bf5291
jne 0x4111f0
mov edi, dword [esp + 0x5c]
mov ebx, edx
cmp ebx, 0xb86a72eb
jne 0x4111f8
jmp 0x41122b
mov edi, dword [esp + 0x58]
mov ebx, 0xb86a72eb
mov edi, dword [edi]
cmp ebx, 0xb86a72eb
jne 0x4111f8
movsd xmm0, qword [ebp + 0x1c]
mov dword [esp + 0xc], esi
mov dword [esp + 8], eax
mov dword [esp + 4], ecx
mov dword [esp], edi
movsd qword [esp + 0x10], xmm0
call fcn.00415b60
lea ecx, [esp + 0x68]
mov edx, 0x11d211d3
mov esi, 0xdf29924e
mov dword [esp + 0x58], ecx
mov ecx, dword [esp + 0x58]
cmp dword [esp + 0x7c], 0xf
mov dword [esp + 0x5c], ecx
mov ecx, 0x30b617f6
cmova edx, ecx
nop word cs:[eax + eax]
nop dword [eax + eax]
cmp esi, 0x30b617f6
je 0x4112a6
cmp esi, 0x11d211d3
je 0x4112bb
cmp esi, 0xdf29924e
jne 0x411280
mov ecx, dword [esp + 0x5c]
mov esi, edx
cmp esi, 0x30b617f6
jne 0x411288
mov ecx, dword [esp + 0x58]
mov esi, 0x11d211d3
mov ecx, dword [ecx]
cmp esi, 0x30b617f6
jne 0x411288
jmp 0x4112a6
lea edx, [ebp + 0xc]
movsd xmm0, qword [edx]
movsx edx, byte [ebp + 0x18]
movsd qword [esp + 0x30], xmm0
movsd xmm0, qword [esp + 0x30]
movsd qword [esp + 8], xmm0
mov dword [esp + 0x18], ecx
mov ecx, dword [ebp + 0x14]
mov dword [esp + 0x14], edx
mov dword [esp + 0x1c], eax
mov edx, dword [esp + 0x20]
mov dword [esp + 0x10], ecx
mov ecx, dword [ebp + 8]
mov dword [esp], edx
mov dword [esp + 4], ecx
call fcn.00419fa0
mov eax, dword [esp + 0x3c]
lea eax, [esp + 0x68]
mov esi, 0x5b63c86a
mov dword [esp + 0x5c], eax
mov eax, dword [esp + 0x5c]
mov eax, 0x1f827f1
nop dword [eax + eax]
cmp eax, 0xe63e0ae3
je 0x411374
cmp eax, 0x5b63c86a
je 0x41134e
cmp eax, 0x1f827f1
jne 0x411320
mov eax, dword [esp + 0x5c]
cmp dword [eax + 0x14], 0xf
mov eax, 0xe63e0ae3
cmova eax, esi
cmp eax, 0xe63e0ae3
jne 0x411327
jmp 0x411374
mov eax, dword [esp + 0x5c]
mov eax, dword [eax]
mov ecx, dword [esp + 0x5c]
mov ecx, dword [ecx + 0x14]
mov dword [esp], eax
inc ecx
mov dword [esp + 4], ecx
call fcn.004078e0
mov eax, 0xe63e0ae3
cmp eax, 0xe63e0ae3
jne 0x411327
mov eax, dword [esp + 0x5c]
mov edi, 0xe725cd14
mov dword [eax + 0x10], 0
mov eax, dword [esp + 0x5c]
mov dword [eax + 0x14], 0xf
mov eax, dword [esp + 0x5c]
mov byte [eax], 0
mov ecx, dword [0x450520]
mov eax, dword [0x450524]
lea edx, [ecx - 1]
imul edx, ecx
mov ecx, edx
mov esi, edx
and edx, 0xafcb4aa
not ecx
and esi, 0xd0024351
and ecx, 0x25010804
or esi, ecx
xor esi, 0xd0024351
or edx, esi
mov ecx, edx
and edx, 0xb2ef440a
not ecx
and ecx, 0x4d10bbf5
or edx, ecx
mov ecx, edx
mov esi, edx
xor edx, 0xb813f0a0
xor ecx, 0x47ec0f5f
xor esi, 0x47ec0f5e
and edx, 0xfffffffe
and esi, ecx
and ecx, 1
or ecx, edx
mov edx, esi
and edx, ecx
xor ecx, esi
or ecx, edx
mov edx, ecx
mov esi, ecx
and ecx, 0xcb556181
not edx
and esi, 0x1482181c
and edx, 0x20288662
or esi, edx
xor esi, 0x1482181c
or ecx, esi
mov esi, 0x6901612f
mov edx, ecx
and ecx, 0x765129ae
not edx
and edx, 0x89aed651
or ecx, edx
mov edx, ecx
xor ecx, 0xb400002c
xor edx, 0x2423050
and ecx, 0xf4b987ac
and edx, 0xb467853
or ecx, edx
mov edx, ecx
xor ecx, 0x7018878c
xor edx, 0x1044053
and ecx, 0x7a5abf8c
and edx, 0x85a54073
or edx, ecx
xor edx, 0x85a54073
setne cl
sete dl
sete byte [esp + 0x58]
cmp eax, 9
setg ch
cmp eax, 0xa
mov ah, dl
setl al
setl byte [esp + 0x5c]
xor ah, ch
and ch, dl
and cl, al
or cl, ch
mov ch, al
xor al, dl
and ch, dl
or al, ch
mov edx, eax
xor dl, cl
xor cl, 1
or cl, al
xor dl, 1
xor cl, 1
or cl, dl
mov al, cl
not al
and al, ah
xor ah, 1
mov dl, ah
xor dl, cl
and cl, ah
and dl, ah
or cl, al
mov dh, dl
xor dh, cl
test cl, cl
mov ecx, 0xe725cd14
cmovne ecx, esi
test dl, dl
cmove ecx, edi
test dh, dh
cmovne ecx, esi
mov esi, 0x8664642e
nop dword [eax]
cmp esi, 0x541df2d9
jg 0x411520
cmp esi, 0x8664642e
je 0x411535
cmp esi, 0xe725cd14
jne 0x4114f0
mov esi, 0x541df2da
cmp esi, 0x541df2d9
jle 0x4114f8
nop word cs:[eax + eax]
nop
cmp esi, 0x541df2da
je 0x4115a2
cmp esi, 0x6901612f
jne 0x4114f0
jmp 0x4115b5
mov bh, byte [esp + 0x58]
movzx edx, byte [esp + 0x5c]
mov dh, dl
mov bl, bh
or bl, dl
xor dh, 1
xor dl, bh
xor bl, 1
or dh, bh
or bl, dl
and dl, bh
mov ah, dh
xor ah, dl
xor dl, 1
mov al, bl
or dl, dh
xor ah, 1
xor al, 1
xor dl, 1
or dl, ah
mov ah, dl
and dl, bl
xor ah, 1
or bl, ah
and ah, al
or ah, dl
mov al, bl
mov edx, 0x541df2da
xor al, ah
test al, 1
cmovne edx, edi
test ah, 1
mov eax, 0x541df2da
mov esi, edx
cmovne esi, eax
test bl, 1
cmovne esi, edx
cmp esi, 0x541df2d9
jg 0x411520
jmp 0x4114f8
mov esi, ecx
cmp esi, 0x541df2d9
jg 0x411520
jmp 0x4114f8
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x80]
xor ecx, ebp
call fcn.0041ede8
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x1c