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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x80
mov esi, esp
mov dword [esi + 0xc], ecx
lea eax, [ebp + 8]
mov dword [esi + 0x10], eax
mov eax, dword [0x47f880]
xor eax, ebp
mov dword [esi + 0x78], eax
mov dword [esi + 0x14], 0x32984615
mov eax, dword [esi + 0x14]
mov dword [esi + 8], eax
sub eax, 0x93a95e03
je 0x406146
jmp 0x405951
mov eax, dword [esi + 8]
sub eax, 0x94567751
je 0x406299
jmp 0x405964
mov eax, dword [esi + 8]
sub eax, 0x9a35c057
je 0x406050
jmp 0x405977
mov eax, dword [esi + 8]
sub eax, 0x9acbd445
je 0x40616d
jmp 0x40598a
mov eax, dword [esi + 8]
sub eax, 0x9e130320
je 0x405fcd
jmp 0x40599d
mov eax, dword [esi + 8]
sub eax, 0xa34c38f3
je 0x406484
jmp 0x4059b0
mov eax, dword [esi + 8]
sub eax, 0xa73246b4
je 0x406044
jmp 0x4059c3
mov eax, dword [esi + 8]
sub eax, 0xa7821288
je 0x406161
jmp 0x4059d6
mov eax, dword [esi + 8]
sub eax, 0xa851dc63
je 0x405f87
jmp 0x4059e9
mov eax, dword [esi + 8]
sub eax, 0xab0201ff
je 0x40623f
jmp 0x4059fc
mov eax, dword [esi + 8]
sub eax, 0xaf3d54f2
je 0x405ec7
jmp 0x405a0f
mov eax, dword [esi + 8]
sub eax, 0xafb31992
je 0x40643c
jmp 0x405a22
mov eax, dword [esi + 8]
sub eax, 0xb5626ccc
je 0x4064cd
jmp 0x405a35
mov eax, dword [esi + 8]
sub eax, 0xb5ebe69c
je 0x405e6d
jmp 0x405a48
mov eax, dword [esi + 8]
sub eax, 0xc28b21de
je 0x405dc8
jmp 0x405a5b
mov eax, dword [esi + 8]
sub eax, 0xd03d7948
je 0x4064c1
jmp 0x405a6e
mov eax, dword [esi + 8]
sub eax, 0xd52ef739
je 0x405f56
jmp 0x405a81
mov eax, dword [esi + 8]
sub eax, 0xd8ceb26d
je 0x405f3b
jmp 0x405a94
mov eax, dword [esi + 8]
sub eax, 0xd9da85b6
je 0x4063f5
jmp 0x405aa7
mov eax, dword [esi + 8]
sub eax, 0xdd3cd4d8
je 0x405e16
jmp 0x405aba
mov eax, dword [esi + 8]
sub eax, 0xe6070c51
je 0x406065
jmp 0x405acd
mov eax, dword [esi + 8]
sub eax, 0xe64e0ccd
je 0x40649c
jmp 0x405ae0
mov eax, dword [esi + 8]
sub eax, 0xf33e693a
je 0x406418
jmp 0x405af3
mov eax, dword [esi + 8]
sub eax, 0xf7304674
je 0x4062df
jmp 0x405b06
mov eax, dword [esi + 8]
sub eax, 0xf815183a
je 0x405cfa
jmp 0x405b19
mov eax, dword [esi + 8]
sub eax, 0x103255f
je 0x405f21
jmp 0x405b2c
mov eax, dword [esi + 8]
sub eax, 0x13e8612a
je 0x406038
jmp 0x405b3f
mov eax, dword [esi + 8]
sub eax, 0x15399d73
je 0x406126
jmp 0x405b52
mov eax, dword [esi + 8]
sub eax, 0x16e90fc5
je 0x40638f
jmp 0x405b65
mov eax, dword [esi + 8]
sub eax, 0x18575484
je 0x405f15
jmp 0x405b78
mov eax, dword [esi + 8]
sub eax, 0x1a6c3dde
je 0x4063d5
jmp 0x405b8b
mov eax, dword [esi + 8]
sub eax, 0x1f38feec
je 0x40630c
jmp 0x405b9e
mov eax, dword [esi + 8]
sub eax, 0x2568ca48
je 0x406132
jmp 0x405bb1
mov eax, dword [esi + 8]
sub eax, 0x32984615
je 0x405cc0
jmp 0x405bc4
mov eax, dword [esi + 8]
sub eax, 0x329c5762
je 0x4063e1
jmp 0x405bd7
mov eax, dword [esi + 8]
sub eax, 0x382ee8a5
je 0x4061d8
jmp 0x405bea
mov eax, dword [esi + 8]
sub eax, 0x3b2f7b95
je 0x4062eb
jmp 0x405bfd
mov eax, dword [esi + 8]
sub eax, 0x3e264551
je 0x40624b
jmp 0x405c10
mov eax, dword [esi + 8]
sub eax, 0x475035ca
je 0x406490
jmp 0x405c23
mov eax, dword [esi + 8]
sub eax, 0x540d4c0f
je 0x406463
jmp 0x405c36
mov eax, dword [esi + 8]
sub eax, 0x58b3c874
je 0x406300
jmp 0x405c49
mov eax, dword [esi + 8]
sub eax, 0x62bb3d32
je 0x405f62
jmp 0x405c5c
mov eax, dword [esi + 8]
sub eax, 0x6511aadb
je 0x405e79
jmp 0x405c6f
mov eax, dword [esi + 8]
sub eax, 0x68b9a466
je 0x4060d8
jmp 0x405c82
mov eax, dword [esi + 8]
sub eax, 0x6975b3cb
je 0x406478
jmp 0x405c95
mov eax, dword [esi + 8]
sub eax, 0x7942037f
je 0x406326
jmp 0x405ca8
mov eax, dword [esi + 8]
sub eax, 0x7a69865f
je 0x406341
jmp 0x405cbb
jmp 0x4064d4
push eax
push eax
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x28], eax
push eax
mov eax, esp
mov dword [esi + 0x2c], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x30], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x34], eax
push eax
mov eax, esp
mov dword [esi + 0x38], eax
push eax
mov eax, esp
mov dword [esi + 0x3c], eax
mov dword [esi + 0x14], 0xf815183a
jmp 0x4064d4
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
push eax
mov edx, esp
mov dword [esi + 0x40], edx
mov dword [esi + 0x44], ecx
mov edx, ecx
add edx, 0x20
mov dword [esi + 0x48], edx
add ecx, 0x38
mov dword [esi + 0x4c], ecx
mov dword [esi + 0x24], eax
lea ecx, [esi + 0x60]
lea eax, str.hxhzrbvtikrpxiskiomzfwbnvnpitkkchuwtcykcueqnjwmyejzyarkdmjiqgpfexelfcfhuuqcxjtcilarxhdcctwwmmbdgebav
sub esp, 4
mov dword [esp], eax
call fcn.004141f0
mov dword [esi + 0x20], 0x13be
vmovsd xmm0, qword [0x42d220]
vmovsd qword [esi + 0x18], xmm0
mov eax, dword [esi + 0x28]
vmovsd xmm0, qword [0x42d218]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x2c]
mov dword [eax], 0x197
mov ecx, dword [esi + 0x30]
lea eax, str.hxhzrbvtikrpxiskiomzfwbnvnpitkkchuwtcykcueqnjwmyejzyarkdmjiqgpfexelfcfhuuqcxjtcilarxhdcctwwmmbdgebav
sub esp, 4
mov dword [esp], eax
call fcn.004141f0
mov ecx, dword [esi + 0x34]
lea eax, str.hxhzrbvtikrpxiskiomzfwbnvnpitkkchuwtcykcueqnjwmyejzyarkdmjiqgpfexelfcfhuuqcxjtcilarxhdcctwwmmbdgebav
sub esp, 4
mov dword [esp], eax
call fcn.004141f0
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x34]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004145c0
add esp, 8
mov byte [esi + 7], al
mov ecx, dword [esi + 0x34]
call fcn.00414080
mov ecx, dword [esi + 0x30]
call fcn.00414080
mov dl, byte [esi + 7]
mov eax, 0x9a35c057
mov ecx, 0xc28b21de
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
mov edx, eax
sub edx, 0x82100964
sub edx, 1
add edx, 0x82100964
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x540d4c0f
mov ecx, 0xdd3cd4d8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov eax, dword [esi + 0x38]
mov dword [eax], 0x3d
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
mov edx, eax
sub edx, 0xa6fa75f3
sub edx, 1
add edx, 0xa6fa75f3
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x540d4c0f
mov ecx, 0xb5ebe69c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov dword [esi + 0x14], 0x6511aadb
jmp 0x4064d4
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
mov edx, eax
add edx, 0x429b9b58
sub edx, 1
sub edx, 0x429b9b58
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x6975b3cb
mov ecx, 0xaf3d54f2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
mov edx, eax
add edx, 0xdcc3283e
sub edx, 1
sub edx, 0xdcc3283e
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x6975b3cb
mov ecx, 0x18575484
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov dword [esi + 0x14], 0x103255f
jmp 0x4064d4
mov eax, dword [esi + 0x38]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x53], al
mov dword [esi + 0x14], 0xd8ceb26d
jmp 0x4064d4
mov dl, byte [esi + 0x53]
mov eax, 0xa73246b4
mov ecx, 0xd52ef739
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov dword [esi + 0x14], 0x62bb3d32
jmp 0x4064d4
mov eax, dword [esi + 0x38]
mov ecx, dword [eax]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0xffffffff
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [esi + 0x38]
mov dword [eax], ecx
mov dword [esi + 0x14], 0xa851dc63
jmp 0x4064d4
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xa34c38f3
mov ecx, 0x9e130320
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov ecx, dword [0x480dac]
mov eax, dword [0x480da8]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0xa34c38f3
mov ecx, 0x13e8612a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov dword [esi + 0x14], 0x103255f
jmp 0x4064d4
mov dword [esi + 0x14], 0x9a35c057
jmp 0x4064d4
mov eax, dword [esi + 0x3c]
mov dword [eax], 0x4f
mov dword [esi + 0x14], 0xe6070c51
jmp 0x4064d4
mov ecx, dword [0x480dac]
mov eax, dword [0x480da8]
mov edx, ecx
sub edx, 0x572314bd
sub edx, 1
add edx, 0x572314bd
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 1
mov dl, al
and dl, 0xff
and bl, cl
mov ch, ah
and ch, 0xff
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 1
and al, cl
or dl, al
mov eax, 0x475035ca
mov ecx, 0x68b9a466
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
mov edx, eax
add edx, 0x8c1aaa74
sub edx, 1
sub edx, 0x8c1aaa74
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x475035ca
mov ecx, 0x15399d73
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov dword [esi + 0x14], 0x2568ca48
jmp 0x4064d4
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov dword [esi + 0x54], eax
mov dword [esi + 0x14], 0x93a95e03
jmp 0x4064d4
mov edx, dword [esi + 0x54]
mov eax, 0x3b2f7b95
mov ecx, 0xa7821288
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov dword [esi + 0x14], 0x9acbd445
jmp 0x4064d4
mov ecx, dword [0x480dac]
mov eax, dword [0x480da8]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov al, bl
xor al, 0xff
mov ah, dh
xor ah, 0xff
mov cl, 1
xor cl, 0
mov dl, al
and dl, 0
and bl, cl
mov ch, ah
and ch, 0
and dh, cl
or dl, bl
or ch, dh
xor dl, ch
or al, ah
xor al, 0xff
or cl, 0
and al, cl
or dl, al
mov eax, 0xe64e0ccd
mov ecx, 0x382ee8a5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0xffffffff
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [esi + 0x3c]
mov dword [eax], ecx
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
mov edx, eax
sub edx, 0xa7193993
sub edx, 1
add edx, 0xa7193993
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xe64e0ccd
mov ecx, 0xab0201ff
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov dword [esi + 0x14], 0x3e264551
jmp 0x4064d4
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
mov edx, eax
add edx, 0x58ea1e0f
sub edx, 1
sub edx, 0x58ea1e0f
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xd03d7948
mov ecx, 0x94567751
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xd03d7948
mov ecx, 0xf7304674
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov dword [esi + 0x14], 0x2568ca48
jmp 0x4064d4
mov eax, dword [esi + 0x40]
mov dword [eax], 0x5a
mov dword [esi + 0x14], 0x58b3c874
jmp 0x4064d4
mov dword [esi + 0x14], 0x1f38feec
jmp 0x4064d4
mov eax, dword [esi + 0x40]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x5b], al
mov dword [esi + 0x14], 0x7942037f
jmp 0x4064d4
mov dl, byte [esi + 0x5b]
mov eax, 0xf33e693a
mov ecx, 0x7a69865f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
mov edx, eax
sub edx, 0x64b89e96
sub edx, 1
add edx, 0x64b89e96
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xb5626ccc
mov ecx, 0x16e90fc5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov eax, dword [0x480dac]
mov ecx, dword [0x480da8]
xor edi, edi
sub edi, 1
mov edx, eax
add edx, edi
imul eax, edx
and eax, 1
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0xb5626ccc
mov ecx, 0x1a6c3dde
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x4064d4
mov dword [esi + 0x14], 0x329c5762
jmp 0x4064d4
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0x5c], eax
mov dword [esi + 0x14], 0xd9da85b6
jmp 0x4064d4
mov ecx, dword [esi + 0x5c]
sub ecx, 0xb48d56e
add ecx, 0xffffffff
add ecx, 0xb48d56e
mov eax, dword [esi + 0x40]
mov dword [eax], ecx
mov dword [esi + 0x14], 0x1f38feec
jmp 0x4064d4
lea ecx, [esi + 0x60]
call fcn.00414080
mov ecx, dword [esi + 0x44]
call fcn.00414080
mov ecx, dword [esi + 0x48]
call fcn.00414080
mov dword [esi + 0x14], 0xafb31992
jmp 0x4064d4
mov ecx, dword [esi + 0x4c]
call fcn.00414080
mov al, 1
and al, 1
movzx eax, al
mov dword [esi], eax
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.0041d9e0
mov eax, dword [esi]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x5c
mov eax, dword [esi + 0x38]
mov dword [eax], 0x3d
mov dword [esi + 0x14], 0xdd3cd4d8
jmp 0x4064d4
mov dword [esi + 0x14], 0xaf3d54f2
jmp 0x4064d4
mov dword [esi + 0x14], 0x9e130320
jmp 0x4064d4
mov dword [esi + 0x14], 0x68b9a466
jmp 0x4064d4
mov eax, dword [esi + 0x3c]
mov ecx, dword [eax]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 0xffffffff
add eax, ecx
xor ecx, ecx
sub ecx, eax
mov eax, dword [esi + 0x3c]
mov dword [eax], ecx
mov dword [esi + 0x14], 0x382ee8a5
jmp 0x4064d4
mov dword [esi + 0x14], 0x94567751
jmp 0x4064d4
mov dword [esi + 0x14], 0x16e90fc5
jmp 0x40593b