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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x74
mov eax, dword [ebp + 0xc]
mov dword [ebp - 0x78], eax
mov eax, dword [ebp + 8]
mov dword [ebp - 0x74], eax
mov eax, dword [0x43c080]
xor eax, ebp
mov dword [ebp - 0x10], eax
mov dword [ebp - 0x70], 0xe84cb871
mov eax, dword [ebp - 0x70]
mov dword [ebp - 0x7c], eax
sub eax, 0x83cba5f4
je 0x40dbcf
jmp 0x40d5cc
mov eax, dword [ebp - 0x7c]
sub eax, 0x8847cec9
je 0x40db3f
jmp 0x40d5df
mov eax, dword [ebp - 0x7c]
sub eax, 0x893fb9cd
je 0x40daf9
jmp 0x40d5f2
mov eax, dword [ebp - 0x7c]
sub eax, 0x90d281d1
je 0x40de99
jmp 0x40d605
mov eax, dword [ebp - 0x7c]
sub eax, 0x931bf825
je 0x40da48
jmp 0x40d618
mov eax, dword [ebp - 0x7c]
sub eax, 0xa09e2898
je 0x40dade
jmp 0x40d62b
mov eax, dword [ebp - 0x7c]
sub eax, 0xa875ee13
je 0x40df5a
jmp 0x40d63e
mov eax, dword [ebp - 0x7c]
sub eax, 0xbfd429f1
je 0x40dec6
jmp 0x40d651
mov eax, dword [ebp - 0x7c]
sub eax, 0xc0b1e5ee
je 0x40dbec
jmp 0x40d664
mov eax, dword [ebp - 0x7c]
sub eax, 0xd808c19b
je 0x40ddcc
jmp 0x40d677
mov eax, dword [ebp - 0x7c]
sub eax, 0xda0b9a0d
je 0x40dd11
jmp 0x40d68a
mov eax, dword [ebp - 0x7c]
sub eax, 0xdcb9360f
je 0x40dd05
jmp 0x40d69d
mov eax, dword [ebp - 0x7c]
sub eax, 0xe38b57ce
je 0x40da8a
jmp 0x40d6b0
mov eax, dword [ebp - 0x7c]
sub eax, 0xe7deeceb
je 0x40ddad
jmp 0x40d6c3
mov eax, dword [ebp - 0x7c]
sub eax, 0xe80c7930
je 0x40d8c3
jmp 0x40d6d6
mov eax, dword [ebp - 0x7c]
sub eax, 0xe84cb871
je 0x40d87d
jmp 0x40d6e9
mov eax, dword [ebp - 0x7c]
sub eax, 0xf9ec90f5
je 0x40ddb9
jmp 0x40d6fc
mov eax, dword [ebp - 0x7c]
sub eax, 0xfa290f08
je 0x40df27
jmp 0x40d70f
mov eax, dword [ebp - 0x7c]
sub eax, 0xfd0821ba
je 0x40de8d
jmp 0x40d722
mov eax, dword [ebp - 0x7c]
sub eax, 0x25bb72e
je 0x40d987
jmp 0x40d735
mov eax, dword [ebp - 0x7c]
sub eax, 0x569bd4f
je 0x40dbb9
jmp 0x40d748
mov eax, dword [ebp - 0x7c]
sub eax, 0x576d664
je 0x40d97b
jmp 0x40d75b
mov eax, dword [ebp - 0x7c]
sub eax, 0x99c7a33
je 0x40dbf8
jmp 0x40d76e
mov eax, dword [ebp - 0x7c]
sub eax, 0x155e180c
je 0x40dbad
jmp 0x40d781
mov eax, dword [ebp - 0x7c]
sub eax, 0x1ecd7d3b
je 0x40daac
jmp 0x40d794
mov eax, dword [ebp - 0x7c]
sub eax, 0x1ef60d7b
je 0x40dc7f
jmp 0x40d7a7
mov eax, dword [ebp - 0x7c]
sub eax, 0x26580f94
je 0x40df3c
jmp 0x40d7ba
mov eax, dword [ebp - 0x7c]
sub eax, 0x2eb6827e
je 0x40df18
jmp 0x40d7cd
mov eax, dword [ebp - 0x7c]
sub eax, 0x38de14ad
je 0x40df6e
jmp 0x40d7e0
mov eax, dword [ebp - 0x7c]
sub eax, 0x40229b5d
je 0x40dd5f
jmp 0x40d7f3
mov eax, dword [ebp - 0x7c]
sub eax, 0x4bdf8b0f
je 0x40d9ac
jmp 0x40d806
mov eax, dword [ebp - 0x7c]
sub eax, 0x5f6e79bb
je 0x40deab
jmp 0x40d819
mov eax, dword [ebp - 0x7c]
sub eax, 0x616c1038
je 0x40de3f
jmp 0x40d82c
mov eax, dword [ebp - 0x7c]
sub eax, 0x65fb1212
je 0x40da54
jmp 0x40d83f
mov eax, dword [ebp - 0x7c]
sub eax, 0x768c84bc
je 0x40d9fa
jmp 0x40d852
mov eax, dword [ebp - 0x7c]
sub eax, 0x77b4ef8c
je 0x40da6b
jmp 0x40d865
mov eax, dword [ebp - 0x7c]
sub eax, 0x7c2f8b1b
je 0x40dc0c
jmp 0x40d878
jmp 0x40df75
mov eax, dword [0x43d52c]
mov ecx, dword [0x43d528]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
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, 0xbfd429f1
mov ecx, 0xe80c7930
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov eax, dword [ebp - 0x74]
mov ecx, dword [ebp - 0x78]
push eax
mov edx, esp
mov dword [ebp - 0x58], edx
push eax
mov edx, esp
mov dword [ebp - 0x54], edx
push eax
mov edx, esp
mov dword [ebp - 0x50], edx
push eax
mov edx, esp
mov dword [ebp - 0x4c], edx
push eax
mov edx, esp
mov dword [ebp - 0x48], edx
mov dword [ebp - 0x60], ecx
mov dword [ebp - 0x64], eax
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x68], eax
mov eax, dword [ebp - 0x64]
mov ecx, dword [ebp - 0x68]
add eax, dword [ecx + 0x3c]
mov dword [ebp - 0x6c], eax
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x6c]
add ecx, dword [eax + 0x78]
mov eax, dword [ebp - 0x58]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
add ecx, dword [eax + 0x1c]
mov eax, dword [ebp - 0x54]
mov dword [eax], ecx
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
add ecx, dword [eax + 0x24]
mov eax, dword [ebp - 0x50]
mov dword [eax], ecx
mov eax, dword [0x43d52c]
mov ecx, dword [0x43d528]
mov edx, eax
add edx, 0x83e4682d
sub edx, 1
sub edx, 0x83e4682d
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, 0xbfd429f1
mov ecx, 0x576d664
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov dword [ebp - 0x70], 0x25bb72e
jmp 0x40df75
mov ecx, dword [ebp - 0x64]
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
add ecx, dword [eax + 0x20]
mov eax, dword [ebp - 0x4c]
mov dword [eax], ecx
mov eax, dword [ebp - 0x48]
mov dword [eax], 0
mov dword [ebp - 0x70], 0x4bdf8b0f
jmp 0x40df75
mov eax, dword [0x43d52c]
mov ecx, dword [0x43d528]
mov edx, eax
sub edx, 0xd0344f38
sub edx, 1
add edx, 0xd0344f38
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, 0x2eb6827e
mov ecx, 0x768c84bc
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x44], eax
mov eax, dword [0x43d52c]
mov ecx, dword [0x43d528]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
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, 0x2eb6827e
mov ecx, 0x931bf825
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov dword [ebp - 0x70], 0x65fb1212
jmp 0x40df75
mov eax, dword [ebp - 0x58]
mov eax, dword [eax]
add eax, 0x18
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x70], 0x77b4ef8c
jmp 0x40df75
mov eax, dword [ebp - 0x40]
mov esi, dword [eax]
mov edx, dword [ebp - 0x44]
mov eax, 0xf9ec90f5
mov ecx, 0xe38b57ce
cmp edx, esi
cmovb eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x3c], eax
mov eax, dword [ebp - 0x4c]
mov eax, dword [eax]
mov dword [ebp - 0x38], eax
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x34], eax
mov dword [ebp - 0x70], 0x1ecd7d3b
jmp 0x40df75
mov eax, dword [ebp - 0x38]
mov ecx, dword [ebp - 0x34]
mov eax, dword [eax + ecx*4]
mov edx, dword [ebp - 0x3c]
add edx, eax
mov ecx, dword [ebp - 0x60]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ecx
call fcn.0042a830
add esp, 8
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x70], 0xa09e2898
jmp 0x40df75
mov edx, dword [ebp - 0x30]
mov eax, 0xc0b1e5ee
mov ecx, 0x893fb9cd
cmp edx, 0
cmove eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov eax, dword [0x43d52c]
mov ecx, dword [0x43d528]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
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, 0xfa290f08
mov ecx, 0x8847cec9
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov eax, dword [ebp - 0x64]
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x54]
mov eax, dword [eax]
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x50]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x48]
mov ecx, dword [ecx]
mov ax, word [eax + ecx*2]
mov word [ebp - 0x22], ax
mov eax, dword [0x43d52c]
mov ecx, dword [0x43d528]
mov edx, eax
add edx, 0xa09f7ab5
sub edx, 1
sub edx, 0xa09f7ab5
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, 0xfa290f08
mov ecx, 0x155e180c
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov dword [ebp - 0x70], 0x569bd4f
jmp 0x40df75
mov ax, word [ebp - 0x22]
movzx eax, ax
mov dword [ebp - 0x20], eax
mov dword [ebp - 0x70], 0x83cba5f4
jmp 0x40df75
mov eax, dword [ebp - 0x28]
mov ecx, dword [ebp - 0x20]
mov ecx, dword [eax + ecx*4]
mov eax, dword [ebp - 0x2c]
add eax, ecx
mov dword [ebp - 0x5c], eax
mov dword [ebp - 0x70], 0x90d281d1
jmp 0x40df75
mov dword [ebp - 0x70], 0x99c7a33
jmp 0x40df75
mov eax, dword [ebp - 0x48]
mov eax, dword [eax]
mov dword [ebp - 0x1c], eax
mov dword [ebp - 0x70], 0x7c2f8b1b
jmp 0x40df75
mov ecx, dword [0x43d52c]
mov eax, dword [0x43d528]
mov edx, ecx
sub edx, 0xd7302bc0
sub edx, 1
add edx, 0xd7302bc0
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, 0x26580f94
mov ecx, 0x1ef60d7b
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov eax, dword [ebp - 0x1c]
add eax, 0xe837fef6
add eax, 1
sub eax, 0xe837fef6
mov dword [ebp - 0x18], eax
mov ecx, dword [0x43d52c]
mov eax, dword [0x43d528]
mov edx, ecx
sub edx, 0xafd92b3
sub edx, 1
add edx, 0xafd92b3
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, 0x26580f94
mov ecx, 0xdcb9360f
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov dword [ebp - 0x70], 0xda0b9a0d
jmp 0x40df75
mov eax, dword [0x43d52c]
mov ecx, dword [0x43d528]
mov edx, eax
add edx, 0xea19965b
sub edx, 1
sub edx, 0xea19965b
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, 0xa875ee13
mov ecx, 0x40229b5d
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x18]
mov dword [eax], ecx
mov eax, dword [0x43d52c]
mov ecx, dword [0x43d528]
xor esi, esi
sub esi, 1
mov edx, eax
add edx, esi
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, 0xa875ee13
mov ecx, 0xe7deeceb
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov dword [ebp - 0x70], 0x4bdf8b0f
jmp 0x40df75
mov dword [ebp - 0x5c], 0
mov dword [ebp - 0x70], 0xd808c19b
jmp 0x40df75
mov ecx, dword [0x43d52c]
mov eax, dword [0x43d528]
mov edx, ecx
sub edx, 0x49fdb848
sub edx, 1
add edx, 0x49fdb848
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, 0x38de14ad
mov ecx, 0x616c1038
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov eax, dword [0x43d52c]
mov ecx, dword [0x43d528]
mov edx, eax
sub edx, 0x5e99713e
sub edx, 1
add edx, 0x5e99713e
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, 0x38de14ad
mov ecx, 0xfd0821ba
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x70], eax
jmp 0x40df75
mov dword [ebp - 0x70], 0x90d281d1
jmp 0x40df75
mov eax, dword [ebp - 0x5c]
mov dword [ebp - 0x14], eax
mov dword [ebp - 0x70], 0x5f6e79bb
jmp 0x40df75
mov eax, dword [ebp - 0x14]
mov dword [ebp - 0x80], eax
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.00426240
mov eax, dword [ebp - 0x80]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov esi, dword [ebp - 0x74]
mov edi, dword [ebp - 0x78]
push eax
mov edx, esp
push eax
mov ecx, esp
push eax
mov eax, esp
mov dword [ebp - 0x60], edi
mov dword [ebp - 0x64], esi
mov esi, dword [ebp - 0x64]
mov dword [ebp - 0x68], esi
mov esi, dword [ebp - 0x64]
mov edi, dword [ebp - 0x68]
add esi, dword [edi + 0x3c]
mov dword [ebp - 0x6c], esi
mov esi, dword [ebp - 0x64]
mov edi, dword [ebp - 0x6c]
add esi, dword [edi + 0x78]
mov dword [edx], esi
mov esi, dword [ebp - 0x64]
mov edi, dword [edx]
add esi, dword [edi + 0x1c]
mov dword [ecx], esi
mov ecx, dword [ebp - 0x64]
mov edx, dword [edx]
add ecx, dword [edx + 0x24]
mov dword [eax], ecx
mov dword [ebp - 0x70], 0xe80c7930
jmp 0x40df75
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x70], 0x768c84bc
jmp 0x40df75
mov eax, dword [ebp - 0x54]
mov eax, dword [ebp - 0x50]
mov eax, dword [ebp - 0x48]
mov dword [ebp - 0x70], 0x8847cec9
jmp 0x40df75
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov eax, dword [ebp - 0x1c]
mov dword [ebp - 0x70], 0x1ef60d7b
jmp 0x40df75
mov eax, dword [ebp - 0x48]
mov ecx, dword [ebp - 0x18]
mov dword [eax], ecx
mov dword [ebp - 0x70], 0x40229b5d
jmp 0x40df75
mov dword [ebp - 0x70], 0x616c1038
jmp 0x40d5b6