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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x1ac
mov eax, dword [ebp + 0xc]
mov ecx, dword [ebp + 8]
mov edx, dword [0x4fa538]
mov esi, dword [0x4fa534]
mov edi, edx
add edi, 0xd22e88e1
sub edi, 1
sub edi, 0xd22e88e1
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
and bl, 1
mov byte [ebp - 0x36], bl
cmp esi, 0xa
setl bl
and bl, 1
mov byte [ebp - 0x35], bl
mov dword [ebp - 0x3c], 0x66f27b37
mov dword [ebp - 0x40], eax
mov dword [ebp - 0x44], ecx
mov eax, dword [ebp - 0x3c]
mov ecx, eax
sub ecx, 0x9422429c
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x4c], ecx
jg 0x407e28
jmp 0x407e12
mov eax, dword [ebp - 0x48]
sub eax, 0x89c5b456
mov dword [ebp - 0x50], eax
je 0x40865a
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x6e04b7a2
mov dword [ebp - 0x54], eax
jg 0x40821e
jmp 0x407e3e
mov eax, dword [ebp - 0x48]
sub eax, 0x66f27b36
mov dword [ebp - 0x58], eax
jg 0x408205
jmp 0x407e54
mov eax, dword [ebp - 0x48]
sub eax, 0x6277da96
mov dword [ebp - 0x5c], eax
jg 0x4081ec
jmp 0x407e6a
mov eax, dword [ebp - 0x48]
sub eax, 0x5ca5e9bf
mov dword [ebp - 0x60], eax
jg 0x4081d3
jmp 0x407e80
mov eax, dword [ebp - 0x48]
sub eax, 0x58615dee
mov dword [ebp - 0x64], eax
jg 0x4081ba
jmp 0x407e96
mov eax, dword [ebp - 0x48]
sub eax, 0x46090db2
mov dword [ebp - 0x68], eax
jg 0x4081a1
jmp 0x407eac
mov eax, dword [ebp - 0x48]
sub eax, 0x314a7584
mov dword [ebp - 0x6c], eax
jg 0x408188
jmp 0x407ec2
mov eax, dword [ebp - 0x48]
sub eax, 0x1ff96bfe
mov dword [ebp - 0x70], eax
jg 0x40816f
jmp 0x407ed8
mov eax, dword [ebp - 0x48]
sub eax, 0x12eb918d
mov dword [ebp - 0x74], eax
jg 0x408156
jmp 0x407eee
mov eax, dword [ebp - 0x48]
sub eax, 0xb4914a8
mov dword [ebp - 0x78], eax
jg 0x40813d
jmp 0x407f04
mov eax, dword [ebp - 0x48]
sub eax, 0x34f15c7
mov dword [ebp - 0x7c], eax
jg 0x408124
jmp 0x407f1a
mov eax, dword [ebp - 0x48]
sub eax, 0x2450148
mov dword [ebp - 0x80], eax
jg 0x40810b
jmp 0x407f30
mov eax, dword [ebp - 0x48]
sub eax, 0xfd1f19b8
mov dword [ebp - 0x84], eax
jg 0x4080f2
jmp 0x407f49
mov eax, dword [ebp - 0x48]
sub eax, 0xe73ca7c1
mov dword [ebp - 0x88], eax
jg 0x4080d9
jmp 0x407f62
mov eax, dword [ebp - 0x48]
sub eax, 0xe17f8319
mov dword [ebp - 0x8c], eax
jg 0x4080c0
jmp 0x407f7b
mov eax, dword [ebp - 0x48]
sub eax, 0xd707a5f6
mov dword [ebp - 0x90], eax
jg 0x4080a7
jmp 0x407f94
mov eax, dword [ebp - 0x48]
sub eax, 0xcd2e3dd5
mov dword [ebp - 0x94], eax
jg 0x40808e
jmp 0x407fad
mov eax, dword [ebp - 0x48]
sub eax, 0xbe183c0b
mov dword [ebp - 0x98], eax
jg 0x408075
jmp 0x407fc6
mov eax, dword [ebp - 0x48]
sub eax, 0xb7e9fcee
mov dword [ebp - 0x9c], eax
jg 0x40805c
jmp 0x407fdf
mov eax, dword [ebp - 0x48]
sub eax, 0xb2c165d8
mov dword [ebp - 0xa0], eax
jg 0x408043
jmp 0x407ff8
mov eax, dword [ebp - 0x48]
sub eax, 0x9422429d
mov dword [ebp - 0xa4], eax
je 0x408584
jmp 0x408011
mov eax, dword [ebp - 0x48]
sub eax, 0x94b3f905
mov dword [ebp - 0xa8], eax
je 0x408626
jmp 0x40802a
mov eax, dword [ebp - 0x48]
sub eax, 0xa7845ded
mov dword [ebp - 0xac], eax
je 0x408262
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0xb2c165d9
mov dword [ebp - 0xb0], eax
je 0x4087cd
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0xb7e9fcef
mov dword [ebp - 0xb4], eax
je 0x4088ca
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0xbe183c0c
mov dword [ebp - 0xb8], eax
je 0x408601
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0xcd2e3dd6
mov dword [ebp - 0xbc], eax
je 0x4087c1
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0xd707a5f7
mov dword [ebp - 0xc0], eax
je 0x4085af
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0xe17f831a
mov dword [ebp - 0xc4], eax
je 0x4088be
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0xe73ca7c2
mov dword [ebp - 0xc8], eax
je 0x408cfb
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0xfd1f19b9
mov dword [ebp - 0xcc], eax
je 0x4089c0
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x2450149
mov dword [ebp - 0xd0], eax
je 0x408590
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x34f15c8
mov dword [ebp - 0xd4], eax
je 0x4089cd
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0xb4914a9
mov dword [ebp - 0xd8], eax
je 0x4086b0
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x12eb918e
mov dword [ebp - 0xdc], eax
je 0x408863
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x1ff96bff
mov dword [ebp - 0xe0], eax
je 0x408d07
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x314a7585
mov dword [ebp - 0xe4], eax
je 0x408925
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x46090db3
mov dword [ebp - 0xe8], eax
je 0x408746
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x58615def
mov dword [ebp - 0xec], eax
je 0x4089ab
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x5ca5e9c0
mov dword [ebp - 0xf0], eax
je 0x40863b
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x6277da97
mov dword [ebp - 0xf4], eax
je 0x408ccf
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x66f27b37
mov dword [ebp - 0xf8], eax
je 0x40823c
jmp 0x408237
mov eax, dword [ebp - 0x48]
sub eax, 0x6e04b7a3
mov dword [ebp - 0xfc], eax
je 0x40899f
jmp 0x408237
jmp 0x408d2d
mov eax, 0x34f15c8
mov ecx, 0xa7845ded
mov dl, byte [ebp - 0x36]
mov dh, byte [ebp - 0x35]
mov bl, dl
and bl, dh
xor dl, dh
or bl, dl
test bl, 1
cmovne eax, ecx
mov dword [ebp - 0x3c], eax
jmp 0x408d2d
mov eax, 4
mov dword [ebp - 0x100], eax
call fcn.004d65d0
mov eax, esp
mov dword [ebp - 0x34], eax
mov eax, dword [ebp - 0x100]
call fcn.004d65d0
mov eax, esp
mov dword [ebp - 0x30], eax
mov eax, dword [ebp - 0x100]
call fcn.004d65d0
mov eax, esp
mov dword [ebp - 0x2c], eax
mov eax, dword [ebp - 0x100]
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x100]
mov dword [ebp - 0x104], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x100]
mov dword [ebp - 0x108], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x100]
mov dword [ebp - 0x10c], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x100]
mov dword [ebp - 0x110], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x100]
mov dword [ebp - 0x114], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov dword [ebp - 0x28], eax
mov eax, dword [ebp - 0x100]
call fcn.004d65d0
mov eax, esp
mov dword [ebp - 0x24], eax
mov eax, dword [ebp - 0x100]
call fcn.004d65d0
mov eax, esp
mov dword [ebp - 0x20], eax
mov eax, dword [ebp - 0x100]
call fcn.004d65d0
mov eax, esp
mov dword [ebp - 0x1c], eax
mov eax, dword [ebp - 0x100]
call fcn.004d65d0
mov eax, esp
mov dword [ebp - 0x18], eax
mov eax, dword [ebp - 0x100]
call fcn.004d65d0
mov eax, esp
mov dword [ebp - 0x14], eax
mov eax, dword [ebp - 0x100]
call fcn.004d65d0
mov eax, dword [ebp - 0x10c]
mov ecx, esp
mov edx, dword [ebp - 0x110]
mov esi, dword [ebp - 0x108]
mov edi, dword [ebp - 0x100]
mov dword [ebp - 0x118], eax
mov eax, edi
mov dword [ebp - 0x11c], ecx
mov dword [ebp - 0x120], edx
mov dword [ebp - 0x124], esi
call fcn.004d65d0
mov eax, dword [ebp - 0x114]
mov ecx, esp
mov edx, dword [ebp - 0x104]
mov dword [ebp - 0x10], ecx
mov ecx, dword [ebp - 0x30]
mov esi, dword [ebp - 0x40]
mov dword [ecx], esi
mov ecx, dword [ebp - 0x2c]
mov edi, dword [ebp - 0x44]
mov dword [ecx], edi
mov dword [ebp - 0x128], eax
mov dword [ebp - 0x12c], edx
call fcn.00415d40
mov ecx, 0x34f15c8
mov edx, 0x9422429d
mov bl, 1
mov esi, dword [ebp - 0x12c]
mov dword [esi], eax
mov eax, dword [ebp - 0x124]
mov dword [eax], 0
mov edi, dword [ebp - 0x118]
mov dword [edi], 0
mov eax, dword [ebp - 0x120]
mov dword [eax], 0
mov eax, dword [ebp - 0x128]
mov dword [eax], 0
mov eax, dword [ebp - 0x28]
mov dword [eax], 0
mov eax, dword [ebp - 0x24]
mov dword [eax], 0
mov eax, dword [ebp - 0x20]
mov dword [eax], 0
mov eax, dword [esi]
mov esi, dword [ebp - 0x1c]
mov dword [esi], eax
mov eax, dword [ebp - 0x18]
mov dword [eax], 0
mov eax, dword [ebp - 0x14]
mov dword [eax], 0
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov esi, dword [ebp - 0x124]
mov dword [esi], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov esi, dword [esi]
add eax, dword [esi + 0x3c]
mov dword [edi], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov esi, dword [edi]
add eax, dword [esi + 0x78]
mov esi, dword [ebp - 0x128]
mov dword [esi], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov esi, dword [esi]
add eax, dword [esi + 0x20]
mov esi, dword [ebp - 0x28]
mov dword [esi], eax
mov eax, dword [ebp - 0x128]
mov esi, dword [eax]
mov esi, dword [esi + 0x18]
mov eax, dword [ebp - 0x14]
mov dword [eax], esi
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov esi, dword [ebp - 0x128]
mov esi, dword [esi]
add eax, dword [esi + 0x24]
mov esi, dword [ebp - 0x20]
mov dword [esi], eax
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov esi, dword [ebp - 0x128]
mov esi, dword [esi]
add eax, dword [esi + 0x1c]
mov esi, dword [ebp - 0x24]
mov dword [esi], eax
mov eax, dword [ebp - 0x10]
mov dword [eax], 0
mov eax, dword [0x4fa538]
mov esi, dword [0x4fa534]
mov edi, eax
sub edi, 0x1b8493a4
sub edi, 1
add edi, 0x1b8493a4
imul eax, edi
and eax, 1
cmp eax, 0
sete bh
cmp esi, 0xa
setl al
mov ah, bh
xor ah, 1
mov byte [ebp - 0x12d], al
xor al, 1
xor bl, 0
mov byte [ebp - 0x12e], al
mov al, ah
and al, 0
and bh, bl
mov byte [ebp - 0x12f], al
mov al, byte [ebp - 0x12e]
and al, 0
mov byte [ebp - 0x130], al
mov al, byte [ebp - 0x12d]
and al, bl
mov byte [ebp - 0x131], al
mov al, byte [ebp - 0x12f]
or al, bh
mov bh, byte [ebp - 0x130]
mov byte [ebp - 0x132], al
mov al, byte [ebp - 0x131]
or bh, al
mov al, byte [ebp - 0x132]
xor al, bh
mov bh, byte [ebp - 0x12e]
or ah, bh
xor ah, 1
or bl, 0
and ah, bl
or al, ah
test al, 1
cmovne ecx, edx
mov dword [ebp - 0x3c], ecx
jmp 0x408d2d
mov dword [ebp - 0x3c], 0x2450149
jmp 0x408d2d
mov eax, 0x94b3f905
mov ecx, 0xd707a5f7
mov edx, dword [ebp - 0x10]
mov edx, dword [edx]
mov esi, dword [ebp - 0x30]
cmp edx, dword [esi]
cmovb eax, ecx
mov dword [ebp - 0x3c], eax
jmp 0x408d2d
mov eax, 0xffffffff
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x2c]
mov edx, dword [edx]
movsx esi, byte [edx + ecx]
mov edi, esi
xor edi, 0xffffffff
and edi, 0x50ab4cfe
mov ebx, eax
xor ebx, 0x50ab4cfe
and esi, ebx
xor eax, 0xe3
and eax, 0x50ab4cfe
and ebx, 0xe3
or edi, esi
or eax, ebx
xor edi, eax
mov eax, edi
mov byte [edx + ecx], al
mov dword [ebp - 0x3c], 0xbe183c0c
jmp 0x408d2d
mov eax, dword [ebp - 0x10]
mov eax, dword [eax]
sub eax, 0xd0e3c7f8
add eax, 1
add eax, 0xd0e3c7f8
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov dword [ebp - 0x3c], 0x2450149
jmp 0x408d2d
mov eax, dword [ebp - 0x10]
mov dword [eax], 0
mov dword [ebp - 0x3c], 0x5ca5e9c0
jmp 0x408d2d
mov eax, 0x58615def
mov ecx, 0x89c5b456
mov edx, dword [ebp - 0x10]
mov edx, dword [edx]
mov esi, dword [ebp - 0x14]
cmp edx, dword [esi]
cmovb eax, ecx
mov dword [ebp - 0x3c], eax
jmp 0x408d2d
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x28]
mov edx, dword [edx]
add eax, dword [edx + ecx*4]
mov ecx, dword [ebp - 0x18]
mov dword [ecx], eax
mov eax, dword [ebp - 0x30]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x2c]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x18]
mov edx, dword [edx]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.0040ffb0
add esp, 0xc
mov ecx, 0xb4914a9
mov edx, 0xb2c165d9
cmp eax, 0
cmovne ecx, edx
mov dword [ebp - 0x3c], ecx
jmp 0x408d2d
mov eax, 0x6277da97
mov ecx, 0x46090db3
mov dl, 1
mov esi, dword [0x4fa538]
mov edi, dword [0x4fa534]
mov ebx, esi
add ebx, 0xc0f42fd7
sub ebx, 1
sub ebx, 0xc0f42fd7
imul esi, ebx
and esi, 1
cmp esi, 0
sete dh
cmp edi, 0xa
setl bl
mov bh, dh
xor bh, 1
mov dword [ebp - 0x138], eax
mov al, bl
xor al, 1
xor dl, 1
mov ah, bh
and ah, 1
and dh, dl
mov byte [ebp - 0x139], al
and al, 1
and bl, dl
or ah, dh
or al, bl
xor ah, al
mov al, byte [ebp - 0x139]
or bh, al
xor bh, 1
or dl, 1
and bh, dl
or ah, bh
test ah, 1
mov esi, dword [ebp - 0x138]
cmovne esi, ecx
mov dword [ebp - 0x3c], esi
jmp 0x408d2d
mov eax, 0x6277da97
mov ecx, 0xcd2e3dd6
mov edx, dword [ebp - 0x1c]
mov edx, dword [edx]
mov esi, dword [ebp - 0x10]
mov esi, dword [esi]
mov edi, dword [ebp - 0x20]
mov edi, dword [edi]
movzx esi, word [edi + esi*2]
mov edi, dword [ebp - 0x24]
mov edi, dword [edi]
add edx, dword [edi + esi*4]
mov esi, dword [ebp - 0x34]
mov dword [esi], edx
mov edx, dword [0x4fa538]
mov esi, dword [0x4fa534]
mov edi, edx
sub edi, 0x8893128
sub edi, 1
add edi, 0x8893128
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov dl, bl
and dl, bh
xor bl, bh
or dl, bl
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x3c], eax
jmp 0x408d2d
mov dword [ebp - 0x3c], 0xfd1f19b9
jmp 0x408d2d
mov eax, 0xe73ca7c2
mov ecx, 0x12eb918e
mov dl, 1
mov esi, dword [0x4fa538]
mov edi, dword [0x4fa534]
mov ebx, esi
sub ebx, 0xd07420e1
sub ebx, 1
add ebx, 0xd07420e1
imul esi, ebx
and esi, 1
cmp esi, 0
sete dh
cmp edi, 0xa
setl bl
mov bh, dh
xor bh, 1
mov dword [ebp - 0x140], eax
mov al, bl
xor al, 1
xor dl, 0
mov ah, bh
and ah, 0
and dh, dl
mov byte [ebp - 0x141], al
and al, 0
and bl, dl
or ah, dh
or al, bl
xor ah, al
mov al, byte [ebp - 0x141]
or bh, al
xor bh, 1
or dl, 0
and bh, dl
or ah, bh
test ah, 1
mov esi, dword [ebp - 0x140]
cmovne esi, ecx
mov dword [ebp - 0x3c], esi
jmp 0x408d2d
mov eax, 0xe73ca7c2
mov ecx, 0xe17f831a
mov edx, dword [0x4fa538]
mov esi, dword [0x4fa534]
mov edi, edx
sub edi, 0x662fe89a
sub edi, 1
add edi, 0x662fe89a
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov dl, bl
and dl, bh
xor bl, bh
or dl, bl
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x3c], eax
jmp 0x408d2d
mov dword [ebp - 0x3c], 0xb7e9fcef
jmp 0x408d2d
mov eax, 0x1ff96bff
mov ecx, 0x314a7585
mov edx, dword [0x4fa538]
mov esi, dword [0x4fa534]
mov edi, edx
sub edi, 0x67bae490
sub edi, 1
add edi, 0x67bae490
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov dl, bl
and dl, bh
xor bl, bh
or dl, bl
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x3c], eax
jmp 0x408d2d
mov eax, 0x1ff96bff
mov ecx, 0x6e04b7a3
mov edx, 0
mov esi, dword [ebp - 0x10]
mov esi, dword [esi]
mov edi, edx
sub edi, esi
mov esi, edx
sub esi, 1
add edi, esi
sub edx, edi
mov esi, dword [ebp - 0x10]
mov dword [esi], edx
mov edx, dword [0x4fa538]
mov esi, dword [0x4fa534]
mov edi, edx
sub edi, 0x2526e2aa
sub edi, 1
add edi, 0x2526e2aa
imul edx, edi
and edx, 1
cmp edx, 0
sete bl
cmp esi, 0xa
setl bh
mov dl, bl
and dl, bh
xor bl, bh
or dl, bl
test dl, 1
cmovne eax, ecx
mov dword [ebp - 0x3c], eax
jmp 0x408d2d
mov dword [ebp - 0x3c], 0x5ca5e9c0
jmp 0x408d2d
mov eax, dword [ebp - 0x34]
mov dword [eax], 0
mov dword [ebp - 0x3c], 0xfd1f19b9
jmp 0x408d2d
mov eax, dword [ebp - 0x34]
mov eax, dword [eax]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov eax, 4
mov dword [ebp - 0x148], eax
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x14c], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x150], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x154], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x158], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x15c], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x160], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x164], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x168], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x16c], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x15c]
mov edx, dword [ebp - 0x148]
mov dword [ebp - 0x170], eax
mov eax, edx
mov dword [ebp - 0x174], ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x178], eax
mov eax, ecx
call fcn.004d65d0
mov eax, dword [ebp - 0x178]
mov ecx, dword [ebp - 0x150]
mov edx, esp
mov esi, dword [ebp - 0x148]
mov dword [ebp - 0x17c], eax
mov eax, esi
mov dword [ebp - 0x180], ecx
mov dword [ebp - 0x184], edx
call fcn.004d65d0
mov eax, dword [ebp - 0x164]
mov ecx, dword [ebp - 0x168]
mov edx, esp
mov esi, dword [ebp - 0x148]
mov dword [ebp - 0x188], eax
mov eax, esi
mov dword [ebp - 0x18c], ecx
mov dword [ebp - 0x190], edx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x148]
mov dword [ebp - 0x194], eax
mov eax, ecx
call fcn.004d65d0
mov eax, esp
mov ecx, dword [ebp - 0x16c]
mov edx, dword [ebp - 0x158]
mov esi, dword [ebp - 0x148]
mov dword [ebp - 0x198], eax
mov eax, esi
mov dword [ebp - 0x19c], ecx
mov dword [ebp - 0x1a0], edx
call fcn.004d65d0
mov eax, dword [ebp - 0x170]
mov ecx, dword [ebp - 0x154]
mov edx, esp
mov esi, dword [ebp - 0x194]
mov edi, dword [ebp - 0x160]
mov ebx, dword [ebp - 0x184]
mov dword [ebp - 0x1a4], eax
mov eax, dword [ebp - 0x180]
mov dword [ebp - 0x1a8], ecx
mov ecx, dword [ebp - 0x40]
mov dword [eax], ecx
mov eax, dword [ebp - 0x1a8]
mov ecx, dword [ebp - 0x44]
mov dword [eax], ecx
mov dword [ebp - 0x1ac], edi
mov dword [ebp - 0x1b0], esi
mov dword [ebp - 0x1b4], edx
mov dword [ebp - 0x1b8], ebx
call fcn.00415d40
mov ecx, dword [ebp - 0x1a0]
mov dword [ecx], eax
mov eax, dword [ebp - 0x174]
mov dword [eax], 0
mov edx, dword [ebp - 0x1ac]
mov dword [edx], 0
mov esi, dword [ebp - 0x188]
mov dword [esi], 0
mov edi, dword [ebp - 0x18c]
mov dword [edi], 0
mov ebx, dword [ebp - 0x19c]
mov dword [ebx], 0
mov eax, dword [ebp - 0x1a4]
mov dword [eax], 0
mov eax, dword [ebp - 0x17c]
mov dword [eax], 0
mov eax, dword [ecx]
mov ecx, dword [ebp - 0x1b8]
mov dword [ecx], eax
mov eax, dword [ebp - 0x190]
mov dword [eax], 0
mov eax, dword [ebp - 0x1b0]
mov dword [eax], 0
mov eax, dword [ecx]
mov ecx, dword [ebp - 0x174]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1b8]
mov eax, dword [eax]
mov ecx, dword [ecx]
add eax, dword [ecx + 0x3c]
mov dword [edx], eax
mov eax, dword [ebp - 0x1b8]
mov ecx, dword [eax]
mov eax, dword [edx]
add ecx, dword [eax + 0x78]
mov dword [edi], ecx
mov eax, dword [ebp - 0x1b8]
mov ecx, dword [eax]
mov eax, dword [edi]
add ecx, dword [eax + 0x20]
mov dword [ebx], ecx
mov eax, dword [edi]
mov eax, dword [eax + 0x18]
mov ecx, dword [ebp - 0x1b0]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1b8]
mov eax, dword [eax]
mov ecx, dword [edi]
add eax, dword [ecx + 0x24]
mov ecx, dword [ebp - 0x17c]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1b8]
mov eax, dword [eax]
mov ecx, dword [edi]
add eax, dword [ecx + 0x1c]
mov ecx, dword [ebp - 0x1a4]
mov dword [ecx], eax
mov eax, dword [ebp - 0x1b4]
mov dword [eax], 0
mov dword [ebp - 0x3c], 0xa7845ded
jmp 0x408d2d
mov eax, dword [ebp - 0x1c]
mov eax, dword [eax]
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ecx]
mov edx, dword [ebp - 0x20]
mov edx, dword [edx]
movzx ecx, word [edx + ecx*2]
mov edx, dword [ebp - 0x24]
mov edx, dword [edx]
add eax, dword [edx + ecx*4]
mov ecx, dword [ebp - 0x34]
mov dword [ecx], eax
mov dword [ebp - 0x3c], 0x46090db3
jmp 0x408d2d
mov dword [ebp - 0x3c], 0x12eb918e
jmp 0x408d2d
mov eax, 0
mov ecx, dword [ebp - 0x10]
mov ecx, dword [ecx]
mov edx, eax
sub edx, ecx
mov ecx, eax
sub ecx, 1
add edx, ecx
sub eax, edx
mov ecx, dword [ebp - 0x10]
mov dword [ecx], eax
mov dword [ebp - 0x3c], 0x314a7585
jmp 0x407df6