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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xb0
mov esi, esp
mov dword [esi + 0xc], ecx
lea eax, [ebp + 8]
mov dword [esi + 0x10], eax
mov eax, dword [0x446080]
xor eax, ebp
mov dword [esi + 0xa8], eax
mov dword [esi + 0x14], 0xcb6e3aab
mov eax, dword [esi + 0x14]
mov dword [esi + 8], eax
sub eax, 0x81b94b0e
je 0x409de1
jmp 0x4085c4
mov eax, dword [esi + 8]
sub eax, 0x8249daca
je 0x409d51
jmp 0x4085d7
mov eax, dword [esi + 8]
sub eax, 0x8364322c
je 0x409d1b
jmp 0x4085ea
mov eax, dword [esi + 8]
sub eax, 0x8b263749
je 0x409af1
jmp 0x4085fd
mov eax, dword [esi + 8]
sub eax, 0x8edaf041
je 0x409179
jmp 0x408610
mov eax, dword [esi + 8]
sub eax, 0x94039d9b
je 0x409512
jmp 0x408623
mov eax, dword [esi + 8]
sub eax, 0x97d5607b
je 0x408fe1
jmp 0x408636
mov eax, dword [esi + 8]
sub eax, 0x9947717e
je 0x40980f
jmp 0x408649
mov eax, dword [esi + 8]
sub eax, 0x99fcea3f
je 0x409823
jmp 0x40865c
mov eax, dword [esi + 8]
sub eax, 0x9ac6a43d
je 0x409bcc
jmp 0x40866f
mov eax, dword [esi + 8]
sub eax, 0x9ae904f5
je 0x4095b6
jmp 0x408682
mov eax, dword [esi + 8]
sub eax, 0xa108d7d9
je 0x409d8c
jmp 0x408695
mov eax, dword [esi + 8]
sub eax, 0xaa968f75
je 0x409c8b
jmp 0x4086a8
mov eax, dword [esi + 8]
sub eax, 0xafe8fddd
je 0x409560
jmp 0x4086bb
mov eax, dword [esi + 8]
sub eax, 0xb218393b
je 0x40920c
jmp 0x4086ce
mov eax, dword [esi + 8]
sub eax, 0xb3c8e6f0
je 0x409ae5
jmp 0x4086e1
mov eax, dword [esi + 8]
sub eax, 0xb4daa251
je 0x409a19
jmp 0x4086f4
mov eax, dword [esi + 8]
sub eax, 0xb7707170
je 0x409c97
jmp 0x408707
mov eax, dword [esi + 8]
sub eax, 0xb8224265
je 0x409bf3
jmp 0x40871a
mov eax, dword [esi + 8]
sub eax, 0xb85f80d5
je 0x4093b7
jmp 0x40872d
mov eax, dword [esi + 8]
sub eax, 0xc43edfe2
je 0x408e64
jmp 0x408740
mov eax, dword [esi + 8]
sub eax, 0xcb6e3aab
je 0x408c2b
jmp 0x408753
mov eax, dword [esi + 8]
sub eax, 0xcc3fa098
je 0x409d2a
jmp 0x408766
mov eax, dword [esi + 8]
sub eax, 0xd2b80986
je 0x409506
jmp 0x408779
mov eax, dword [esi + 8]
sub eax, 0xd3d773b8
je 0x409803
jmp 0x40878c
mov eax, dword [esi + 8]
sub eax, 0xd46e4ed9
je 0x409d06
jmp 0x40879f
mov eax, dword [esi + 8]
sub eax, 0xd5bb2982
je 0x408fed
jmp 0x4087b2
mov eax, dword [esi + 8]
sub eax, 0xd940a922
je 0x409311
jmp 0x4087c5
mov eax, dword [esi + 8]
sub eax, 0xdf3e5ff0
je 0x4093c3
jmp 0x4087d8
mov eax, dword [esi + 8]
sub eax, 0xe0c7899c
je 0x409106
jmp 0x4087eb
mov eax, dword [esi + 8]
sub eax, 0xe1878dcf
je 0x409be7
jmp 0x4087fe
mov eax, dword [esi + 8]
sub eax, 0xe431d796
je 0x408f6a
jmp 0x408811
mov eax, dword [esi + 8]
sub eax, 0xe523dae9
je 0x4097e8
jmp 0x408824
mov eax, dword [esi + 8]
sub eax, 0xf7599e44
je 0x409933
jmp 0x408837
mov eax, dword [esi + 8]
sub eax, 0xf84ab582
je 0x4098da
jmp 0x40884a
mov eax, dword [esi + 8]
sub eax, 0x25deb8f
je 0x408d19
jmp 0x40885d
mov eax, dword [esi + 8]
sub eax, 0x624f5fd
je 0x409218
jmp 0x408870
mov eax, dword [esi + 8]
sub eax, 0x7cebe38
je 0x409ca6
jmp 0x408883
mov eax, dword [esi + 8]
sub eax, 0x80875af
je 0x4094c0
jmp 0x408896
mov eax, dword [esi + 8]
sub eax, 0xbc53d70
je 0x409869
jmp 0x4088a9
mov eax, dword [esi + 8]
sub eax, 0xc3b6b80
je 0x409457
jmp 0x4088bc
mov eax, dword [esi + 8]
sub eax, 0xec8a629
je 0x409dcd
jmp 0x4088cf
mov eax, dword [esi + 8]
sub eax, 0x1049681c
je 0x409ded
jmp 0x4088e2
mov eax, dword [esi + 8]
sub eax, 0x129aff52
je 0x409c7f
jmp 0x4088f5
mov eax, dword [esi + 8]
sub eax, 0x17cfbbd9
je 0x4097c2
jmp 0x408908
mov eax, dword [esi + 8]
sub eax, 0x1cefd8b2
je 0x408fc6
jmp 0x40891b
mov eax, dword [esi + 8]
sub eax, 0x1f53b01b
je 0x409411
jmp 0x40892e
mov eax, dword [esi + 8]
sub eax, 0x2713f7ac
je 0x409cb2
jmp 0x408941
mov eax, dword [esi + 8]
sub eax, 0x2780e07d
je 0x409472
jmp 0x408954
mov eax, dword [esi + 8]
sub eax, 0x293f072b
je 0x409c4f
jmp 0x408967
mov eax, dword [esi + 8]
sub eax, 0x2dddb611
je 0x408d25
jmp 0x40897a
mov eax, dword [esi + 8]
sub eax, 0x2f79e5a2
je 0x409d42
jmp 0x40898d
mov eax, dword [esi + 8]
sub eax, 0x333677b8
je 0x4096af
jmp 0x4089a0
mov eax, dword [esi + 8]
sub eax, 0x34d4b83d
je 0x40901c
jmp 0x4089b3
mov eax, dword [esi + 8]
sub eax, 0x366485b0
je 0x4096bb
jmp 0x4089c6
mov eax, dword [esi + 8]
sub eax, 0x3809a2db
je 0x408e16
jmp 0x4089d9
mov eax, dword [esi + 8]
sub eax, 0x39046622
je 0x409bc0
jmp 0x4089ec
mov eax, dword [esi + 8]
sub eax, 0x3910acfd
je 0x40923b
jmp 0x4089ff
mov eax, dword [esi + 8]
sub eax, 0x3d8ff48e
je 0x409c24
jmp 0x408a12
mov eax, dword [esi + 8]
sub eax, 0x3e8f0087
je 0x409001
jmp 0x408a25
mov eax, dword [esi + 8]
sub eax, 0x4103daef
je 0x4097ce
jmp 0x408a38
mov eax, dword [esi + 8]
sub eax, 0x48c7e6ca
je 0x409d36
jmp 0x408a4b
mov eax, dword [esi + 8]
sub eax, 0x49e19ecc
je 0x409da1
jmp 0x408a5e
mov eax, dword [esi + 8]
sub eax, 0x4d06f234
je 0x408ef7
jmp 0x408a71
mov eax, dword [esi + 8]
sub eax, 0x50b98b74
je 0x409a97
mov ecx, dword [0x4475dc]
mov eax, dword [0x4475d8]
mov edx, ecx
add edx, 0x117547a9
sub edx, 1
sub edx, 0x117547a9
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, 0x129aff52
mov ecx, 0x51cd920c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dword [esi + 0x14], 0x2dddb611
jmp 0x409df7
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0x10]
push eax
mov edx, esp
mov dword [esi + 0x40], edx
sub esp, 0x18
mov edx, esp
mov dword [esi + 0x44], edx
sub esp, 0x18
mov edx, esp
mov dword [esi + 0x48], edx
push eax
mov edx, esp
mov dword [esi + 0x4c], edx
mov dword [esi + 0x50], ecx
add ecx, 0x44
mov dword [esi + 0x54], ecx
mov dword [esi + 0x24], eax
mov byte [esi + 0x23], 1
mov byte [esi + 0x22], 1
lea ecx, [esi + 0x90]
lea eax, str.dhsmzxiwbjknhdevmxawrguldejescicxtphjefrdpkxlouvrexlnwunv
sub esp, 4
mov dword [esp], eax
call fcn.004240d0
lea ecx, [esi + 0x78]
lea eax, str.ivarjlnqmsxmubzsklxrzgnknsuqdbkpymkyagrcxtiaxismzdjdbplsjkfflunaanvhsxkixu
sub esp, 4
mov dword [esp], eax
call fcn.004240d0
vmovsd xmm0, qword [0x43e210]
vmovsd qword [esi + 0x18], xmm0
mov ecx, dword [esi + 0x28]
lea eax, str.dhsmzxiwbjknhdevmxawrguldejescicxtphjefrdpkxlouvrexlnwunv
sub esp, 4
mov dword [esp], eax
call fcn.004240d0
mov ecx, dword [esi + 0x2c]
lea eax, str.dhsmzxiwbjknhdevmxawrguldejescicxtphjefrdpkxlouvrexlnwunv
sub esp, 4
mov dword [esp], eax
call fcn.004240d0
mov eax, dword [esi + 0x28]
mov ecx, dword [esi + 0x2c]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00424430
add esp, 8
mov byte [esi + 7], al
mov ecx, dword [esi + 0x2c]
call fcn.00424870
mov ecx, dword [esi + 0x28]
call fcn.00424870
mov dl, byte [esi + 7]
mov eax, 0xe0c7899c
mov ecx, 0x563c659f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
mov edx, eax
add edx, 0x73d65b64
sub edx, 1
sub edx, 0x73d65b64
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, 0xaa968f75
mov ecx, 0xc43edfe2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov ecx, dword [0x4475dc]
mov eax, dword [0x4475d8]
mov edx, ecx
sub edx, 0x566c980d
sub edx, 1
add edx, 0x566c980d
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, 0xaa968f75
mov ecx, 0x7e8c4d38
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov ecx, dword [0x4475dc]
mov eax, dword [0x4475d8]
mov edx, ecx
add edx, 0xee76f9e2
sub edx, 1
sub edx, 0xee76f9e2
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, 0xb7707170
mov ecx, 0xe431d796
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov eax, dword [esi + 0x58]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x5f], al
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
mov edx, eax
add edx, 0xf8ba6be
sub edx, 1
sub edx, 0xf8ba6be
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, 0xb7707170
mov ecx, 0x1cefd8b2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dl, byte [esi + 0x5f]
mov eax, 0x34d4b83d
mov ecx, 0x97d5607b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dword [esi + 0x14], 0xd5bb2982
jmp 0x409df7
mov eax, dword [esi + 0x30]
mov eax, dword [eax]
mov dword [esi + 0x60], eax
mov dword [esi + 0x14], 0x3e8f0087
jmp 0x409df7
mov ecx, dword [esi + 0x60]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x30]
mov dword [eax], ecx
mov dword [esi + 0x14], 0x5c43ff1a
jmp 0x409df7
mov ecx, dword [0x4475dc]
mov eax, dword [0x4475d8]
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, 0x7cebe38
mov ecx, 0x69283355
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov ecx, dword [0x4475dc]
mov eax, dword [0x4475d8]
mov edx, ecx
sub edx, 0x60197a7e
sub edx, 1
add edx, 0x60197a7e
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, 0x2713f7ac
mov ecx, 0x8edaf041
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov ecx, dword [esi + 0x34]
lea eax, str.dhsmzxiwbjknhdevmxawrguldejescicxtphjefrdpkxlouvrexlnwunv
sub esp, 4
mov dword [esp], eax
call fcn.004240d0
mov ecx, dword [esi + 0x38]
lea eax, str.dhsmzxiwbjknhdevmxawrguldejescicxtphjefrdpkxlouvrexlnwunv
sub esp, 4
mov dword [esp], eax
call fcn.004240d0
mov eax, dword [esi + 0x34]
mov ecx, dword [esi + 0x38]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00424a50
add esp, 8
and al, 1
mov byte [esi + 0x66], al
mov ecx, dword [esi + 0x38]
call fcn.00424870
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
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, 0x2713f7ac
mov ecx, 0xb218393b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dword [esi + 0x14], 0x624f5fd
jmp 0x409df7
mov ecx, dword [esi + 0x34]
call fcn.00424870
mov dl, byte [esi + 0x66]
mov eax, 0x5b016d48
mov ecx, 0x3910acfd
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov ecx, dword [0x4475dc]
mov eax, dword [0x4475d8]
mov edx, ecx
sub edx, 0x3989031c
sub edx, 1
add edx, 0x3989031c
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, 0xd46e4ed9
mov ecx, 0x7d8a7425
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dword [esi + 0x14], 0x783f87dd
jmp 0x409df7
mov dword [esi + 0x14], 0xdf3e5ff0
jmp 0x409df7
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
mov edx, eax
sub edx, 0xfbfe2209
sub edx, 1
add edx, 0xfbfe2209
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, 0xcc3fa098
mov ecx, 0x1f53b01b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
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, 0xcc3fa098
mov ecx, 0xc3b6b80
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dl, byte [esi + 0x67]
mov eax, 0x366485b0
mov ecx, 0x2780e07d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
mov edx, eax
add edx, 0x4c1a9df7
sub edx, 1
sub edx, 0x4c1a9df7
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, 0x48c7e6ca
mov ecx, 0x80875af
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
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, 0x48c7e6ca
mov ecx, 0xd2b80986
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dword [esi + 0x14], 0x94039d9b
jmp 0x409df7
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
mov edx, eax
sub edx, 0x12eb996b
sub edx, 1
add edx, 0x12eb996b
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, 0x2f79e5a2
mov ecx, 0xafe8fddd
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov eax, dword [esi + 0x3c]
mov eax, dword [eax]
mov dword [esi + 0x68], eax
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
mov edx, eax
sub edx, 0xa827e841
sub edx, 1
add edx, 0xa827e841
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, 0x2f79e5a2
mov ecx, 0x9ae904f5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dword [esi + 0x14], 0x6377ffbc
jmp 0x409df7
mov dword [esi + 0x14], 0x783f87dd
jmp 0x409df7
mov dword [esi + 0x14], 0x5b016d48
jmp 0x409df7
mov dword [esi + 0x14], 0x4103daef
jmp 0x409df7
mov eax, dword [esi + 0x40]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x6f], al
mov dword [esi + 0x14], 0xe523dae9
jmp 0x409df7
mov dl, byte [esi + 0x6f]
mov eax, 0xf84ab582
mov ecx, 0xd3d773b8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dword [esi + 0x14], 0x9947717e
jmp 0x409df7
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0x70], eax
mov dword [esi + 0x14], 0x99fcea3f
jmp 0x409df7
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
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, 0x49e19ecc
mov ecx, 0xbc53d70
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov ecx, dword [esi + 0x70]
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 + 0x40]
mov dword [eax], ecx
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
mov edx, eax
add edx, 0xa0046fef
sub edx, 1
sub edx, 0xa0046fef
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, 0x49e19ecc
mov ecx, 0x72514eb9
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov ecx, dword [esi + 0x44]
lea eax, str.ivarjlnqmsxmubzsklxrzgnknsuqdbkpymkyagrcxtiaxismzdjdbplsjkfflunaanvhsxkixu
sub esp, 4
mov dword [esp], eax
call fcn.004240d0
mov ecx, dword [esi + 0x48]
lea eax, str.ivarjlnqmsxmubzsklxrzgnknsuqdbkpymkyagrcxtiaxismzdjdbplsjkfflunaanvhsxkixu
sub esp, 4
mov dword [esp], eax
call fcn.004240d0
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x48]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00424a50
add esp, 8
and al, 1
mov byte [esi + 0x76], al
mov ecx, dword [esi + 0x48]
call fcn.00424870
mov dword [esi + 0x14], 0xf7599e44
jmp 0x409df7
mov ecx, dword [0x4475dc]
mov eax, dword [0x4475d8]
mov edx, ecx
add edx, 0x3f8beac
sub edx, 1
sub edx, 0x3f8beac
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, 0xec8a629
mov ecx, 0x672b8275
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dl, byte [esi + 0x76]
mov eax, 0x779e464e
mov ecx, 0x6d96c611
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dword [esi + 0x14], 0x8b263749
jmp 0x409df7
mov eax, dword [0x4475dc]
mov ecx, dword [0x4475d8]
mov edx, eax
add edx, 0xadf9ff1e
sub edx, 1
sub edx, 0xadf9ff1e
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, 0x1049681c
mov ecx, 0x60367649
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dword [esi + 0x14], 0x9ac6a43d
jmp 0x409df7
mov dl, byte [esi + 0x77]
mov eax, 0x3d8ff48e
mov ecx, 0xe1878dcf
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x14], eax
jmp 0x409df7
mov dword [esi + 0x14], 0xb8224265
jmp 0x409df7
mov eax, dword [esi + 0x4c]
mov ecx, dword [eax]
add ecx, 0x2ded0058
add ecx, 0xffffffff
sub ecx, 0x2ded0058
mov eax, dword [esi + 0x4c]
mov dword [eax], ecx
mov dword [esi + 0x14], 0x6eca347a
jmp 0x409df7
mov dword [esi + 0x14], 0x779e464e
jmp 0x409df7
mov ecx, dword [esi + 0x50]
call fcn.00424870
mov ecx, dword [esi + 0x54]
call fcn.00424870
mov eax, 0x125f8
mov dword [esi], eax
mov ecx, dword [esi + 0xa8]
xor ecx, ebp
call fcn.0042ebf0
mov eax, dword [esi]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x5c
mov dword [esi + 0x14], 0x51cd920c
jmp 0x409df7
mov dword [esi + 0x14], 0xc43edfe2
jmp 0x409df7
mov eax, dword [esi + 0x58]
mov dword [esi + 0x14], 0xe431d796
jmp 0x409df7
mov dword [esi + 0x14], 0x69283355
jmp 0x409df7
mov ecx, dword [esi + 0x34]
lea eax, str.dhsmzxiwbjknhdevmxawrguldejescicxtphjefrdpkxlouvrexlnwunv
sub esp, 4
mov dword [esp], eax
call fcn.004240d0
mov ecx, dword [esi + 0x38]
lea eax, str.dhsmzxiwbjknhdevmxawrguldejescicxtphjefrdpkxlouvrexlnwunv
sub esp, 4
mov dword [esp], eax
call fcn.004240d0
mov eax, dword [esi + 0x34]
mov ecx, dword [esi + 0x38]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00424a50
add esp, 8
mov ecx, dword [esi + 0x38]
call fcn.00424870
mov dword [esi + 0x14], 0x8edaf041
jmp 0x409df7
mov eax, dword [esi + 0x3c]
mov dword [eax], 0x40
mov dword [esi + 0x14], 0x7d8a7425
jmp 0x409df7
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x14], 0x7d113df7
jmp 0x409df7
mov dword [esi + 0x14], 0x1f53b01b
jmp 0x409df7
mov dword [esi + 0x14], 0x80875af
jmp 0x409df7
mov eax, dword [esi + 0x3c]
mov dword [esi + 0x14], 0xafe8fddd
jmp 0x409df7
mov eax, dword [esi + 0x68]
mov eax, dword [esi + 0x68]
mov eax, dword [esi + 0x68]
mov eax, dword [esi + 0x68]
mov eax, dword [esi + 0x68]
mov eax, dword [esi + 0x68]
mov eax, dword [esi + 0x68]
mov eax, dword [esi + 0x68]
mov ecx, dword [esi + 0x68]
add ecx, 0x8b9fc452
add ecx, 0xffffffff
sub ecx, 0x8b9fc452
mov eax, dword [esi + 0x3c]
mov dword [eax], ecx
mov dword [esi + 0x14], 0x79f78080
jmp 0x409df7
mov eax, dword [esi + 0x40]
mov dword [eax], 0x3e
mov dword [esi + 0x14], 0x7160cf7d
jmp 0x409df7
mov eax, dword [esi + 0x70]
mov eax, dword [esi + 0x70]
mov eax, dword [esi + 0x70]
mov ecx, dword [esi + 0x70]
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 + 0x40]
mov dword [eax], ecx
mov dword [esi + 0x14], 0xbc53d70
jmp 0x409df7
mov ecx, dword [esi + 0x44]
call fcn.00424870
mov dword [esi + 0x14], 0x672b8275
jmp 0x409df7
mov dword [esi + 0x14], 0x50b98b74
jmp 0x409df7
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x14], 0x60367649
jmp 0x4085ae