Function at 0x4066d0
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 + 0x10], ecx
mov eax, dword [ebp + 8]
mov dword [esi + 0x14], eax
mov eax, dword [0x4e0080]
xor eax, ebp
mov dword [esi + 0x78], eax
mov ecx, dword [0x4e15b4]
mov eax, dword [0x4e15b0]
mov edx, ecx
add edx, 0xead3905f
sub edx, 1
sub edx, 0xead3905f
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x22], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x23], al
mov dword [esi + 0x1c], 0x8e687ed5
mov eax, dword [esi + 0x1c]
mov dword [esi + 0xc], eax
sub eax, 0x835c484d
je 0x40740e
jmp 0x40674a
mov eax, dword [esi + 0xc]
sub eax, 0x86489910
je 0x407373
jmp 0x40675d
mov eax, dword [esi + 0xc]
sub eax, 0x8af9d60b
je 0x406f19
jmp 0x406770
mov eax, dword [esi + 0xc]
sub eax, 0x8e687ed5
je 0x406be9
jmp 0x406783
mov eax, dword [esi + 0xc]
sub eax, 0x9b46dabd
je 0x406cee
jmp 0x406796
mov eax, dword [esi + 0xc]
sub eax, 0x9caeb4d1
je 0x407200
jmp 0x4067a9
mov eax, dword [esi + 0xc]
sub eax, 0x9e1df0e5
je 0x406fee
jmp 0x4067bc
mov eax, dword [esi + 0xc]
sub eax, 0x9f93d71c
je 0x4075d2
jmp 0x4067cf
mov eax, dword [esi + 0xc]
sub eax, 0xa4854010
je 0x407367
jmp 0x4067e2
mov eax, dword [esi + 0xc]
sub eax, 0xa7b3166f
je 0x407402
jmp 0x4067f5
mov eax, dword [esi + 0xc]
sub eax, 0xad4f8919
je 0x40767a
jmp 0x406808
mov eax, dword [esi + 0xc]
sub eax, 0xbb58de82
je 0x4072ea
jmp 0x40681b
mov eax, dword [esi + 0xc]
sub eax, 0xc14273e6
je 0x406dc0
jmp 0x40682e
mov eax, dword [esi + 0xc]
sub eax, 0xc3e5cdf8
je 0x40774e
jmp 0x406841
mov eax, dword [esi + 0xc]
sub eax, 0xc5fa11a9
je 0x407277
jmp 0x406854
mov eax, dword [esi + 0xc]
sub eax, 0xc6404a57
je 0x4076ae
jmp 0x406867
mov eax, dword [esi + 0xc]
sub eax, 0xcf5a28b9
je 0x406cfa
jmp 0x40687a
mov eax, dword [esi + 0xc]
sub eax, 0xcf76d03f
je 0x4071a2
jmp 0x40688d
mov eax, dword [esi + 0xc]
sub eax, 0xd2714c29
je 0x406e65
jmp 0x4068a0
mov eax, dword [esi + 0xc]
sub eax, 0xd3238227
je 0x407575
jmp 0x4068b3
mov eax, dword [esi + 0xc]
sub eax, 0xd74de59d
je 0x40723c
jmp 0x4068c6
mov eax, dword [esi + 0xc]
sub eax, 0xe0b11257
je 0x4074a8
jmp 0x4068d9
mov eax, dword [esi + 0xc]
sub eax, 0xe0ca5a6f
je 0x4070a9
jmp 0x4068ec
mov eax, dword [esi + 0xc]
sub eax, 0xe5486824
je 0x40721b
jmp 0x4068ff
mov eax, dword [esi + 0xc]
sub eax, 0xe878f84b
je 0x4070da
jmp 0x406912
mov eax, dword [esi + 0xc]
sub eax, 0xe9363355
je 0x407393
jmp 0x406925
mov eax, dword [esi + 0xc]
sub eax, 0xed9af407
je 0x407624
jmp 0x406938
mov eax, dword [esi + 0xc]
sub eax, 0xf97358d5
je 0x4076db
jmp 0x40694b
mov eax, dword [esi + 0xc]
sub eax, 0xfaee9486
je 0x40775d
jmp 0x40695e
mov eax, dword [esi + 0xc]
sub eax, 0xfb835561
je 0x4076fc
jmp 0x406971
mov eax, dword [esi + 0xc]
sub eax, 0xe76c0a
je 0x407422
jmp 0x406984
mov eax, dword [esi + 0xc]
sub eax, 0x218772a
je 0x40770b
jmp 0x406997
mov eax, dword [esi + 0xc]
sub eax, 0x5a431e2
je 0x407338
jmp 0x4069aa
mov eax, dword [esi + 0xc]
sub eax, 0x7c5824a
je 0x4076cf
jmp 0x4069bd
mov eax, dword [esi + 0xc]
sub eax, 0xc6535a8
je 0x407692
jmp 0x4069d0
mov eax, dword [esi + 0xc]
sub eax, 0xdb5c5a8
je 0x40709d
jmp 0x4069e3
mov eax, dword [esi + 0xc]
sub eax, 0x16b54417
je 0x407344
jmp 0x4069f6
mov eax, dword [esi + 0xc]
sub eax, 0x1e0456bf
je 0x40751b
jmp 0x406a09
mov eax, dword [esi + 0xc]
sub eax, 0x1f5ccf76
je 0x4076f0
jmp 0x406a1c
mov eax, dword [esi + 0xc]
sub eax, 0x1fb5b490
je 0x406f0d
jmp 0x406a2f
mov eax, dword [esi + 0xc]
sub eax, 0x2931c97e
je 0x406c34
jmp 0x406a42
mov eax, dword [esi + 0xc]
sub eax, 0x2d229fe0
je 0x406e71
jmp 0x406a55
mov eax, dword [esi + 0xc]
sub eax, 0x2fd7f6d6
je 0x407250
jmp 0x406a68
mov eax, dword [esi + 0xc]
sub eax, 0x30363b9e
je 0x407230
jmp 0x406a7b
mov eax, dword [esi + 0xc]
sub eax, 0x3232c243
je 0x407742
jmp 0x406a8e
mov eax, dword [esi + 0xc]
sub eax, 0x34f43e00
je 0x4070e6
jmp 0x406aa1
mov eax, dword [esi + 0xc]
sub eax, 0x396410aa
je 0x407009
jmp 0x406ab4
mov eax, dword [esi + 0xc]
sub eax, 0x3ff8f2d8
je 0x406d95
jmp 0x406ac7
mov eax, dword [esi + 0xc]
sub eax, 0x4028673f
je 0x4073ed
jmp 0x406ada
mov eax, dword [esi + 0xc]
sub eax, 0x40877284
je 0x406fe2
jmp 0x406aed
mov eax, dword [esi + 0xc]
sub eax, 0x445c842f
je 0x406e0e
jmp 0x406b00
mov eax, dword [esi + 0xc]
sub eax, 0x48890576
je 0x407527
jmp 0x406b13
mov eax, dword [esi + 0xc]
sub eax, 0x4923bdf9
je 0x407686
jmp 0x406b26
mov eax, dword [esi + 0xc]
sub eax, 0x4d4bac17
je 0x40726b
jmp 0x406b39
mov eax, dword [esi + 0xc]
sub eax, 0x4e97d04c
je 0x406ebf
jmp 0x406b4c
mov eax, dword [esi + 0xc]
sub eax, 0x4f64ead3
je 0x407137
jmp 0x406b5f
mov eax, dword [esi + 0xc]
sub eax, 0x551a1771
je 0x40743d
jmp 0x406b72
mov eax, dword [esi + 0xc]
sub eax, 0x5df6d942
je 0x407717
jmp 0x406b85
mov eax, dword [esi + 0xc]
sub eax, 0x6763da90
je 0x406f8c
jmp 0x406b98
mov eax, dword [esi + 0xc]
sub eax, 0x6e12c580
je 0x4075de
jmp 0x406bab
mov eax, dword [esi + 0xc]
sub eax, 0x71c598cb
je 0x407057
jmp 0x406bbe
mov eax, dword [esi + 0xc]
sub eax, 0x74529610
je 0x407733
jmp 0x406bd1
mov eax, dword [esi + 0xc]
sub eax, 0x75742beb
je 0x4070ce
jmp 0x406be4
jmp 0x40776c
mov bl, byte [esi + 0x22]
mov dh, byte [esi + 0x23]
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, 0x7c5824a
mov ecx, 0x2931c97e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
push eax
mov eax, esp
mov dword [esi + 0x24], eax
push eax
mov eax, esp
mov dword [esi + 0x28], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x2c], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x30], eax
push eax
sub esp, 0x14
mov eax, esp
mov dword [esi + 0x34], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x38], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x3c], eax
push eax
mov eax, esp
mov dword [esi + 0x40], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x44], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x48], eax
push eax
mov eax, esp
mov dword [esi + 0x4c], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x50], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x54], eax
push eax
mov eax, esp
mov dword [esi + 0x58], eax
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
mov edx, eax
sub edx, 0xc6049edc
sub edx, 1
add edx, 0xc6049edc
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, 0x7c5824a
mov ecx, 0x9b46dabd
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dword [esi + 0x1c], 0xcf5a28b9
jmp 0x40776c
mov ecx, dword [esi + 0x10]
mov edx, dword [esi + 0x14]
mov eax, dword [esi + 0x24]
mov dword [eax], edx
mov eax, dword [esi + 0x28]
mov dword [eax], ecx
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x2c]
lea eax, str.zzyjkhtfsgbe
sub esp, 4
mov dword [esp], eax
call fcn.00413cf0
mov eax, dword [esi + 0x30]
vmovsd xmm0, qword [0x42c1f8]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x34]
lea eax, str.mndutezgirzeteddnljmknfhsjxhysspoppqvsyjlmnakpjmlxtyocjxswegxrngi
sub esp, 4
mov dword [esp], eax
call fcn.00413cf0
mov ecx, dword [esi + 0x38]
lea eax, str.mndutezgirzeteddnljmknfhsjxhysspoppqvsyjlmnakpjmlxtyocjxswegxrngi
sub esp, 4
mov dword [esp], eax
call fcn.00413cf0
mov ecx, dword [esi + 0x3c]
lea eax, str.mndutezgirzeteddnljmknfhsjxhysspoppqvsyjlmnakpjmlxtyocjxswegxrngi
sub esp, 4
mov dword [esp], eax
call fcn.00413cf0
mov eax, dword [esi + 0x38]
mov ecx, dword [esi + 0x3c]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00413dc0
add esp, 8
and al, 1
mov byte [esi + 0x5f], al
mov dword [esi + 0x1c], 0x3ff8f2d8
jmp 0x40776c
mov ecx, dword [esi + 0x3c]
call fcn.00413f60
mov ecx, dword [esi + 0x38]
call fcn.00413f60
mov dl, byte [esi + 0x5f]
mov eax, 0x34f43e00
mov ecx, 0xc14273e6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
mov edx, eax
sub edx, 0x7e9098c1
sub edx, 1
add edx, 0x7e9098c1
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, 0xf97358d5
mov ecx, 0x445c842f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [esi + 0x40]
mov dword [eax], 0x1c
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
mov edx, eax
add edx, 0xe508248b
sub edx, 1
sub edx, 0xe508248b
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, 0xf97358d5
mov ecx, 0xd2714c29
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dword [esi + 0x1c], 0x2d229fe0
jmp 0x40776c
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
mov edx, eax
sub edx, 0x4620e8fb
sub edx, 1
add edx, 0x4620e8fb
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, 0x1f5ccf76
mov ecx, 0x4e97d04c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
mov edx, eax
sub edx, 0x5b4958da
sub edx, 1
add edx, 0x5b4958da
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, 0x1f5ccf76
mov ecx, 0x1fb5b490
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dword [esi + 0x1c], 0x8af9d60b
jmp 0x40776c
mov ecx, dword [0x4e15b4]
mov eax, dword [0x4e15b0]
mov edx, ecx
sub edx, 0x2f74911
sub edx, 1
add edx, 0x2f74911
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, 0xfb835561
mov ecx, 0x6763da90
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0x60], eax
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
mov edx, eax
sub edx, 0x500f8d43
sub edx, 1
add edx, 0x500f8d43
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, 0xfb835561
mov ecx, 0x40877284
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dword [esi + 0x1c], 0x9e1df0e5
jmp 0x40776c
mov edx, dword [esi + 0x60]
mov eax, 0xe878f84b
mov ecx, 0x396410aa
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
mov edx, eax
sub edx, 0xe369aaae
sub edx, 1
add edx, 0xe369aaae
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, 0x218772a
mov ecx, 0x71c598cb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
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, 0x218772a
mov ecx, 0xdb5c5a8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dword [esi + 0x1c], 0xe0ca5a6f
jmp 0x40776c
mov eax, dword [esi + 0x40]
mov ecx, dword [eax]
add ecx, 0x55d745de
add ecx, 0xffffffff
sub ecx, 0x55d745de
mov eax, dword [esi + 0x40]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0x75742beb
jmp 0x40776c
mov dword [esi + 0x1c], 0x8af9d60b
jmp 0x40776c
mov dword [esi + 0x1c], 0x34f43e00
jmp 0x40776c
mov ecx, dword [esi + 0x44]
lea eax, str.mndutezgirzeteddnljmknfhsjxhysspoppqvsyjlmnakpjmlxtyocjxswegxrngi
sub esp, 4
mov dword [esp], eax
call fcn.00413cf0
mov ecx, dword [esi + 0x48]
lea eax, str.mndutezgirzeteddnljmknfhsjxhysspoppqvsyjlmnakpjmlxtyocjxswegxrngi
sub esp, 4
mov dword [esp], eax
call fcn.00413cf0
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x48]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414220
add esp, 8
and al, 1
mov byte [esi + 0x67], al
mov dword [esi + 0x1c], 0x4f64ead3
jmp 0x40776c
mov ecx, dword [0x4e15b4]
mov eax, dword [0x4e15b0]
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, 0x5df6d942
mov ecx, 0xcf76d03f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov ecx, dword [esi + 0x48]
call fcn.00413f60
mov ecx, dword [esi + 0x44]
call fcn.00413f60
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
mov edx, eax
add edx, 0xf7f240fb
sub edx, 1
sub edx, 0xf7f240fb
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, 0x5df6d942
mov ecx, 0x9caeb4d1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dl, byte [esi + 0x67]
mov eax, 0x86489910
mov ecx, 0xe5486824
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [esi + 0x4c]
mov dword [eax], 2
mov dword [esi + 0x1c], 0x30363b9e
jmp 0x40776c
mov dword [esi + 0x1c], 0xd74de59d
jmp 0x40776c
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
mov dword [esi + 0x68], eax
mov dword [esi + 0x1c], 0x2fd7f6d6
jmp 0x40776c
mov edx, dword [esi + 0x68]
mov eax, 0xa4854010
mov ecx, 0x4d4bac17
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dword [esi + 0x1c], 0xc5fa11a9
jmp 0x40776c
mov ecx, dword [0x4e15b4]
mov eax, dword [0x4e15b0]
mov edx, ecx
sub edx, 0x60d08dc8
sub edx, 1
add edx, 0x60d08dc8
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, 0x74529610
mov ecx, 0xbb58de82
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
mov dword [esi + 0x6c], eax
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
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, 0x74529610
mov ecx, 0x5a431e2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dword [esi + 0x1c], 0x16b54417
jmp 0x40776c
mov ecx, dword [esi + 0x6c]
sub ecx, 0x39a3f1c7
add ecx, 0xffffffff
add ecx, 0x39a3f1c7
mov eax, dword [esi + 0x4c]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0xd74de59d
jmp 0x40776c
mov dword [esi + 0x1c], 0x86489910
jmp 0x40776c
mov ecx, dword [esi + 0x50]
lea eax, str.zzyjkhtfsgbe
sub esp, 4
mov dword [esp], eax
call fcn.00413cf0
mov dword [esi + 0x1c], 0xe9363355
jmp 0x40776c
mov ecx, dword [esi + 0x54]
lea eax, str.zzyjkhtfsgbe
sub esp, 4
mov dword [esp], eax
call fcn.00413cf0
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x54]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00413dc0
add esp, 8
mov byte [esi + 0xb], al
mov ecx, dword [esi + 0x54]
call fcn.00413f60
mov ecx, dword [esi + 0x50]
call fcn.00413f60
mov dl, byte [esi + 0xb]
mov eax, 0xc6535a8
mov ecx, 0x4028673f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [esi + 0x58]
mov dword [eax], 0x18
mov dword [esi + 0x1c], 0xa7b3166f
jmp 0x40776c
mov dword [esi + 0x1c], 0x835c484d
jmp 0x40776c
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov dword [esi + 0x70], eax
mov dword [esi + 0x1c], 0xe76c0a
jmp 0x40776c
mov edx, dword [esi + 0x70]
mov eax, 0x4923bdf9
mov ecx, 0x551a1771
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov ecx, dword [0x4e15b4]
mov eax, dword [0x4e15b0]
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, 0x3232c243
mov ecx, 0xe0b11257
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov ecx, dword [0x4e15b4]
mov eax, dword [0x4e15b0]
mov edx, ecx
add edx, 0xb97e41b1
sub edx, 1
sub edx, 0xb97e41b1
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, 0x3232c243
mov ecx, 0x1e0456bf
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dword [esi + 0x1c], 0x48890576
jmp 0x40776c
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
mov edx, eax
sub edx, 0x25f1d4c6
sub edx, 1
add edx, 0x25f1d4c6
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, 0xc3e5cdf8
mov ecx, 0xd3238227
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xffffffff
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [esi + 0x74], eax
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
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, 0xc3e5cdf8
mov ecx, 0x9f93d71c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dword [esi + 0x1c], 0x6e12c580
jmp 0x40776c
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
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, 0xfaee9486
mov ecx, 0xed9af407
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x74]
mov dword [eax], ecx
mov eax, dword [0x4e15b4]
mov ecx, dword [0x4e15b0]
mov edx, eax
sub edx, 0x9a68abe0
sub edx, 1
add edx, 0x9a68abe0
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, 0xfaee9486
mov ecx, 0xad4f8919
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40776c
mov dword [esi + 0x1c], 0x835c484d
jmp 0x40776c
mov dword [esi + 0x1c], 0xc6535a8
jmp 0x40776c
mov ecx, dword [esi + 0x34]
call fcn.00413f60
mov ecx, dword [esi + 0x2c]
call fcn.00413f60
mov dword [esi + 0x1c], 0xc6404a57
jmp 0x40776c
mov al, 1
and al, 1
movzx eax, al
mov dword [esi + 4], eax
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.0041d300
mov eax, dword [esi + 4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov dword [esi + 0x1c], 0x2931c97e
jmp 0x40776c
mov eax, dword [esi + 0x40]
mov dword [eax], 0x1c
mov dword [esi + 0x1c], 0x445c842f
jmp 0x40776c
mov dword [esi + 0x1c], 0x4e97d04c
jmp 0x40776c
mov eax, dword [esi + 0x40]
mov dword [esi + 0x1c], 0x6763da90
jmp 0x40776c
mov dword [esi + 0x1c], 0x71c598cb
jmp 0x40776c
mov ecx, dword [esi + 0x48]
call fcn.00413f60
mov ecx, dword [esi + 0x44]
call fcn.00413f60
mov dword [esi + 0x1c], 0xcf76d03f
jmp 0x40776c
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x1c], 0xbb58de82
jmp 0x40776c
mov dword [esi + 0x1c], 0xe0b11257
jmp 0x40776c
mov eax, dword [esi + 0x58]
mov dword [esi + 0x1c], 0xd3238227
jmp 0x40776c
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x74]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0xed9af407
jmp 0x406734