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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xf8
mov esi, esp
mov dword [esi + 0x10], ecx
mov eax, dword [ebp + 8]
mov dword [esi + 0x14], eax
mov eax, dword [0x452080]
xor eax, ebp
mov dword [esi + 0xf0], eax
mov dword [esi + 0x18], 0xd4a1eeb9
mov eax, dword [esi + 0x18]
mov dword [esi + 0xc], eax
sub eax, 0x881e5f45
je 0x407bbf
jmp 0x407664
mov eax, dword [esi + 0xc]
sub eax, 0x8930c5ab
je 0x408582
jmp 0x407677
mov eax, dword [esi + 0xc]
sub eax, 0x8bc9b68d
je 0x408370
jmp 0x40768a
mov eax, dword [esi + 0xc]
sub eax, 0x8e0b48ab
je 0x407f7a
jmp 0x40769d
mov eax, dword [esi + 0xc]
sub eax, 0x986a1c63
je 0x40865d
jmp 0x4076b0
mov eax, dword [esi + 0xc]
sub eax, 0x99e104d4
je 0x4085e6
jmp 0x4076c3
mov eax, dword [esi + 0xc]
sub eax, 0xa1cdc178
je 0x40843d
jmp 0x4076d6
mov eax, dword [esi + 0xc]
sub eax, 0xa20e2907
je 0x407cde
jmp 0x4076e9
mov eax, dword [esi + 0xc]
sub eax, 0xa7ff7f36
je 0x407cf0
jmp 0x4076fc
mov eax, dword [esi + 0xc]
sub eax, 0xa8e94006
je 0x408104
jmp 0x40770f
mov eax, dword [esi + 0xc]
sub eax, 0xa9c8a90c
je 0x408649
jmp 0x407722
mov eax, dword [esi + 0xc]
sub eax, 0xac806578
je 0x4082c7
jmp 0x407735
mov eax, dword [esi + 0xc]
sub eax, 0xb54e9784
je 0x408625
jmp 0x407748
mov eax, dword [esi + 0xc]
sub eax, 0xb9a06614
je 0x4084a7
jmp 0x40775b
mov eax, dword [esi + 0xc]
sub eax, 0xbac72a93
je 0x408431
jmp 0x40776e
mov eax, dword [esi + 0xc]
sub eax, 0xbd91cad5
je 0x40834f
jmp 0x407781
mov eax, dword [esi + 0xc]
sub eax, 0xc0a831a7
je 0x408458
jmp 0x407794
mov eax, dword [esi + 0xc]
sub eax, 0xc35f298c
je 0x40853c
jmp 0x4077a7
mov eax, dword [esi + 0xc]
sub eax, 0xd4a1eeb9
je 0x407ab7
jmp 0x4077ba
mov eax, dword [esi + 0xc]
sub eax, 0xe183f24d
je 0x407c99
jmp 0x4077cd
mov eax, dword [esi + 0xc]
sub eax, 0xe7c1bcb7
je 0x408364
jmp 0x4077e0
mov eax, dword [esi + 0xc]
sub eax, 0xeec911c6
je 0x407c86
jmp 0x4077f3
mov eax, dword [esi + 0xc]
sub eax, 0xf373e0f9
je 0x407ca5
jmp 0x407806
mov eax, dword [esi + 0xc]
sub eax, 0xf6cd0044
je 0x408254
jmp 0x407819
mov eax, dword [esi + 0xc]
sub eax, 0xf7dbb7d6
je 0x407e16
jmp 0x40782c
mov eax, dword [esi + 0xc]
sub eax, 0xfa0c1888
je 0x407ec9
jmp 0x40783f
mov eax, dword [esi + 0xc]
sub eax, 0xfd56a056
je 0x4081fa
jmp 0x407852
mov eax, dword [esi + 0xc]
sub eax, 0xd342a8
je 0x4082d3
jmp 0x407865
mov eax, dword [esi + 0xc]
sub eax, 0x3caea28
je 0x4080e9
jmp 0x407878
mov eax, dword [esi + 0xc]
sub eax, 0x7d8b62f
je 0x407e95
jmp 0x40788b
mov eax, dword [esi + 0xc]
sub eax, 0x9ec9452
je 0x408678
jmp 0x40789e
mov eax, dword [esi + 0xc]
sub eax, 0xcde19d4
je 0x407cb7
jmp 0x4078b1
mov eax, dword [esi + 0xc]
sub eax, 0x10067266
je 0x407dd0
jmp 0x4078c4
mov eax, dword [esi + 0xc]
sub eax, 0x15b8af1d
je 0x407d3e
jmp 0x4078d7
mov eax, dword [esi + 0xc]
sub eax, 0x18b7a995
je 0x407dc4
jmp 0x4078ea
mov eax, dword [esi + 0xc]
sub eax, 0x1c0f379c
je 0x40805c
jmp 0x4078fd
mov eax, dword [esi + 0xc]
sub eax, 0x1c38d3ca
je 0x40817f
jmp 0x407910
mov eax, dword [esi + 0xc]
sub eax, 0x22d61e45
je 0x4080dd
jmp 0x407923
mov eax, dword [esi + 0xc]
sub eax, 0x2b9aba86
je 0x407e89
jmp 0x407936
mov eax, dword [esi + 0xc]
sub eax, 0x340c7912
je 0x407cd2
jmp 0x407949
mov eax, dword [esi + 0xc]
sub eax, 0x35b3ba6b
je 0x407f0f
jmp 0x40795c
mov eax, dword [esi + 0xc]
sub eax, 0x39a6f4e1
je 0x408464
jmp 0x40796f
mov eax, dword [esi + 0xc]
sub eax, 0x39c62f2c
je 0x408669
jmp 0x407982
mov eax, dword [esi + 0xc]
sub eax, 0x3c8a3368
je 0x4083b6
jmp 0x407995
mov eax, dword [esi + 0xc]
sub eax, 0x475aef4b
je 0x407ff6
jmp 0x4079a8
mov eax, dword [esi + 0xc]
sub eax, 0x479987a0
je 0x40800e
jmp 0x4079bb
mov eax, dword [esi + 0xc]
sub eax, 0x4a2cb5a3
je 0x408334
jmp 0x4079ce
mov eax, dword [esi + 0xc]
sub eax, 0x63303f67
je 0x4085a6
jmp 0x4079e1
mov eax, dword [esi + 0xc]
sub eax, 0x66c274c2
je 0x407b54
jmp 0x4079f4
mov eax, dword [esi + 0xc]
sub eax, 0x6b80e0ea
je 0x408002
jmp 0x407a07
mov eax, dword [esi + 0xc]
sub eax, 0x6bf2e5d1
je 0x408131
jmp 0x407a1a
mov eax, dword [esi + 0xc]
sub eax, 0x6c484d9d
je 0x408206
jmp 0x407a2d
mov eax, dword [esi + 0xc]
sub eax, 0x709934b5
je 0x40849b
jmp 0x407a40
mov eax, dword [esi + 0xc]
sub eax, 0x72b96418
je 0x4084c9
jmp 0x407a53
mov eax, dword [esi + 0xc]
sub eax, 0x77b9c9fc
je 0x408110
jmp 0x407a66
mov eax, dword [esi + 0xc]
sub eax, 0x78bd85b6
je 0x408478
jmp 0x407a79
mov eax, dword [esi + 0xc]
sub eax, 0x79a7bc25
je 0x408619
jmp 0x407a8c
mov eax, dword [esi + 0xc]
sub eax, 0x7b1e9d4b
je 0x40863a
jmp 0x407a9f
mov eax, dword [esi + 0xc]
sub eax, 0x7edc2f58
je 0x407c6b
jmp 0x407ab2
jmp 0x40867f
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x14]
push eax
mov edx, esp
mov dword [esi + 0x30], edx
sub esp, 0x18
mov edx, esp
mov dword [esi + 0x34], edx
sub esp, 0x18
mov edx, esp
mov dword [esi + 0x38], edx
push eax
mov edx, esp
mov dword [esi + 0x3c], edx
mov dword [esi + 0x2c], ecx
mov dword [esi + 0x28], eax
lea ecx, [esi + 0xd8]
lea eax, str.zzyjkhtfsgbe
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
vmovsd xmm0, qword [0x42f1f8]
vmovsd qword [esi + 0x20], xmm0
lea ecx, [esi + 0xc0]
lea eax, str.mndutezgirzeteddnljmknfhsjxhysspoppqvsyjlmnakpjmlxtyocjxswegxrngi
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
lea ecx, [esi + 0xa8]
lea eax, str.mndutezgirzeteddnljmknfhsjxhysspoppqvsyjlmnakpjmlxtyocjxswegxrngi
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
lea ecx, [esi + 0x90]
lea eax, str.mndutezgirzeteddnljmknfhsjxhysspoppqvsyjlmnakpjmlxtyocjxswegxrngi
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
mov dword [esi + 0x18], 0x66c274c2
jmp 0x40867f
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
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, 0x63303f67
mov ecx, 0x881e5f45
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
lea ecx, [esi + 0x90]
lea eax, [esi + 0xa8]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414b80
add esp, 8
and al, 1
mov byte [esi + 0x43], al
lea ecx, [esi + 0x90]
call fcn.00414c00
lea ecx, [esi + 0xa8]
call fcn.00414c00
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
mov edx, ecx
sub edx, 0x8a5d8d3b
sub edx, 1
add edx, 0x8a5d8d3b
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, 0x63303f67
mov ecx, 0x7edc2f58
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dl, byte [esi + 0x43]
mov eax, 0x7d8b62f
mov ecx, 0xeec911c6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x1c], 0x1c
mov dword [esi + 0x18], 0xe183f24d
jmp 0x40867f
mov dword [esi + 0x18], 0xf373e0f9
jmp 0x40867f
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x44], eax
mov dword [esi + 0x18], 0xcde19d4
jmp 0x40867f
mov edx, dword [esi + 0x44]
mov eax, 0x10067266
mov ecx, 0x340c7912
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x18], 0xa20e2907
jmp 0x40867f
mov eax, dword [esi + 0x1c]
mov dword [esi + 0x48], eax
mov dword [esi + 0x18], 0xa7ff7f36
jmp 0x40867f
mov eax, dword [0x4535fc]
mov ecx, dword [0x4535f8]
mov edx, eax
sub edx, 0xa2d4f79a
sub edx, 1
add edx, 0xa2d4f79a
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, 0x99e104d4
mov ecx, 0x15b8af1d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov eax, dword [esi + 0x48]
add eax, 0x7b84b5dc
add eax, 0xffffffff
sub eax, 0x7b84b5dc
mov dword [esi + 0x1c], eax
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
mov edx, ecx
add edx, 0x3d200a9d
sub edx, 1
sub edx, 0x3d200a9d
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, 0x99e104d4
mov ecx, 0x18b7a995
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x18], 0xf373e0f9
jmp 0x40867f
mov eax, dword [0x4535fc]
mov ecx, dword [0x4535f8]
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, 0x79a7bc25
mov ecx, 0xf7dbb7d6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
mov edx, ecx
sub edx, 0x8666737
sub edx, 1
add edx, 0x8666737
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, 0x79a7bc25
mov ecx, 0x2b9aba86
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x18], 0x7d8b62f
jmp 0x40867f
lea ecx, [esi + 0x78]
lea eax, str.mndutezgirzeteddnljmknfhsjxhysspoppqvsyjlmnakpjmlxtyocjxswegxrngi
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
lea ecx, [esi + 0x60]
lea eax, str.mndutezgirzeteddnljmknfhsjxhysspoppqvsyjlmnakpjmlxtyocjxswegxrngi
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
mov dword [esi + 0x18], 0xfa0c1888
jmp 0x40867f
lea ecx, [esi + 0x60]
lea eax, [esi + 0x78]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414ed0
add esp, 8
mov byte [esi + 0xb], al
lea ecx, [esi + 0x60]
call fcn.00414c00
lea ecx, [esi + 0x78]
call fcn.00414c00
mov dl, byte [esi + 0xb]
mov eax, 0xd342a8
mov ecx, 0x35b3ba6b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
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, 0xb54e9784
mov ecx, 0x8e0b48ab
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov eax, dword [esi + 0x30]
mov dword [eax], 2
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
mov edx, ecx
add edx, 0x74e0839
sub edx, 1
sub edx, 0x74e0839
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, 0xb54e9784
mov ecx, 0x475aef4b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x18], 0x6b80e0ea
jmp 0x40867f
mov dword [esi + 0x18], 0x479987a0
jmp 0x40867f
mov eax, dword [0x4535fc]
mov ecx, dword [0x4535f8]
mov edx, eax
sub edx, 0xf1643f8a
sub edx, 1
add edx, 0xf1643f8a
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, 0x7b1e9d4b
mov ecx, 0x1c0f379c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov eax, dword [esi + 0x30]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x4f], al
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
mov edx, ecx
sub edx, 0xb9f3fe81
sub edx, 1
add edx, 0xb9f3fe81
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, 0x7b1e9d4b
mov ecx, 0x22d61e45
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x18], 0x3caea28
jmp 0x40867f
mov dl, byte [esi + 0x4f]
mov eax, 0x6c484d9d
mov ecx, 0xa8e94006
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x18], 0x77b9c9fc
jmp 0x40867f
mov eax, dword [esi + 0x30]
mov eax, dword [eax]
sub eax, 0x7b6b2d62
add eax, 0xffffffff
add eax, 0x7b6b2d62
mov dword [esi + 0x50], eax
mov dword [esi + 0x18], 0x6bf2e5d1
jmp 0x40867f
mov eax, dword [0x4535fc]
mov ecx, dword [0x4535f8]
mov edx, eax
sub edx, 0x8f773b79
sub edx, 1
add edx, 0x8f773b79
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, 0xa9c8a90c
mov ecx, 0x1c38d3ca
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x50]
mov dword [eax], ecx
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
mov edx, ecx
add edx, 0xd2a27446
sub edx, 1
sub edx, 0xd2a27446
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, 0xa9c8a90c
mov ecx, 0xfd56a056
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x18], 0x479987a0
jmp 0x40867f
mov eax, dword [0x4535fc]
mov ecx, dword [0x4535f8]
mov edx, eax
sub edx, 0x49a99521
sub edx, 1
add edx, 0x49a99521
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, 0x986a1c63
mov ecx, 0xf6cd0044
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
mov edx, ecx
sub edx, 0x319206c0
sub edx, 1
add edx, 0x319206c0
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, 0x986a1c63
mov ecx, 0xac806578
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x18], 0xd342a8
jmp 0x40867f
mov ecx, dword [esi + 0x34]
lea eax, str.zzyjkhtfsgbe
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
mov ecx, dword [esi + 0x38]
lea eax, str.zzyjkhtfsgbe
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
mov eax, dword [esi + 0x34]
mov ecx, dword [esi + 0x38]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414b80
add esp, 8
and al, 1
mov byte [esi + 0x57], al
mov ecx, dword [esi + 0x38]
call fcn.00414c00
mov ecx, dword [esi + 0x34]
call fcn.00414c00
mov dword [esi + 0x18], 0x4a2cb5a3
jmp 0x40867f
mov dl, byte [esi + 0x57]
mov eax, 0xb9a06614
mov ecx, 0xbd91cad5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov eax, dword [esi + 0x3c]
mov dword [eax], 0x18
mov dword [esi + 0x18], 0xe7c1bcb7
jmp 0x40867f
mov dword [esi + 0x18], 0x8bc9b68d
jmp 0x40867f
mov eax, dword [0x4535fc]
mov ecx, dword [0x4535f8]
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, 0x39c62f2c
mov ecx, 0x3c8a3368
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov dword [esi + 0x58], eax
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
mov edx, ecx
add edx, 0x7afb04ba
sub edx, 1
sub edx, 0x7afb04ba
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, 0x39c62f2c
mov ecx, 0xbac72a93
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x18], 0xa1cdc178
jmp 0x40867f
mov edx, dword [esi + 0x58]
mov eax, 0x709934b5
mov ecx, 0xc0a831a7
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov dword [esi + 0x18], 0x39a6f4e1
jmp 0x40867f
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov dword [esi + 0x5c], eax
mov dword [esi + 0x18], 0x78bd85b6
jmp 0x40867f
mov ecx, dword [esi + 0x5c]
add ecx, 0xb75f55b6
add ecx, 0xffffffff
sub ecx, 0xb75f55b6
mov eax, dword [esi + 0x3c]
mov dword [eax], ecx
mov dword [esi + 0x18], 0x8bc9b68d
jmp 0x40867f
mov dword [esi + 0x18], 0xb9a06614
jmp 0x40867f
lea ecx, [esi + 0xc0]
call fcn.00414c00
lea ecx, [esi + 0xd8]
call fcn.00414c00
mov dword [esi + 0x18], 0x72b96418
jmp 0x40867f
mov ecx, dword [0x4535fc]
mov eax, dword [0x4535f8]
mov edx, ecx
sub edx, 0x6eb617db
sub edx, 1
add edx, 0x6eb617db
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, 0x9ec9452
mov ecx, 0xc35f298c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov eax, dword [0x4535fc]
mov ecx, dword [0x4535f8]
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, 0x9ec9452
mov ecx, 0x8930c5ab
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40867f
mov al, 1
and al, 1
movzx eax, al
mov dword [esi + 4], eax
mov ecx, dword [esi + 0xf0]
xor ecx, ebp
call fcn.0041fcd0
mov eax, dword [esi + 4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
lea ecx, [esi + 0x90]
lea eax, [esi + 0xa8]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414b80
add esp, 8
lea ecx, [esi + 0x90]
call fcn.00414c00
lea ecx, [esi + 0xa8]
call fcn.00414c00
mov dword [esi + 0x18], 0x881e5f45
jmp 0x40867f
mov eax, dword [esi + 0x48]
mov eax, dword [esi + 0x48]
mov eax, dword [esi + 0x48]
mov eax, dword [esi + 0x48]
mov eax, dword [esi + 0x48]
mov eax, dword [esi + 0x48]
mov eax, dword [esi + 0x48]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xffffffff
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [esi + 0x1c], eax
mov dword [esi + 0x18], 0x15b8af1d
jmp 0x40867f
mov dword [esi + 0x18], 0xf7dbb7d6
jmp 0x40867f
mov eax, dword [esi + 0x30]
mov dword [eax], 2
mov dword [esi + 0x18], 0x8e0b48ab
jmp 0x40867f
mov eax, dword [esi + 0x30]
mov dword [esi + 0x18], 0x1c0f379c
jmp 0x40867f
mov eax, dword [esi + 0x30]
mov ecx, dword [esi + 0x50]
mov dword [eax], ecx
mov dword [esi + 0x18], 0x1c38d3ca
jmp 0x40867f
mov dword [esi + 0x18], 0xf6cd0044
jmp 0x40867f
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x18], 0x3c8a3368
jmp 0x40867f
mov dword [esi + 0x18], 0xc35f298c
jmp 0x40764e