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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0xa0
mov esi, esp
mov dword [esi + 8], ecx
lea eax, [ebp + 8]
mov dword [esi + 0xc], eax
mov eax, dword [0x485080]
xor eax, ebp
mov dword [esi + 0x98], eax
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
mov edx, ecx
add edx, 0x40903ecf
sub edx, 1
sub edx, 0x40903ecf
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x16], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x17], al
mov dword [esi + 0x10], 0x2364747d
mov eax, dword [esi + 0x10]
mov dword [esi + 4], eax
sub eax, 0x802ebe3e
je 0x40f814
jmp 0x40d59d
mov eax, dword [esi + 4]
sub eax, 0x81658bf8
je 0x40fdb2
jmp 0x40d5b0
mov eax, dword [esi + 4]
sub eax, 0x81b29f2d
je 0x40e4b3
jmp 0x40d5c3
mov eax, dword [esi + 4]
sub eax, 0x83086de8
je 0x40e5ea
jmp 0x40d5d6
mov eax, dword [esi + 4]
sub eax, 0x834954cc
je 0x40f5ad
jmp 0x40d5e9
mov eax, dword [esi + 4]
sub eax, 0x8548c1e8
je 0x40fcd7
jmp 0x40d5fc
mov eax, dword [esi + 4]
sub eax, 0x85f6c608
je 0x40e793
jmp 0x40d60f
mov eax, dword [esi + 4]
sub eax, 0x86c84442
je 0x40fe83
jmp 0x40d622
mov eax, dword [esi + 4]
sub eax, 0x88317c09
je 0x40e6f7
jmp 0x40d635
mov eax, dword [esi + 4]
sub eax, 0x8a19fe47
je 0x40f88b
jmp 0x40d648
mov eax, dword [esi + 4]
sub eax, 0x8ded3b25
je 0x40eaef
jmp 0x40d65b
mov eax, dword [esi + 4]
sub eax, 0x8e067064
je 0x40fdbe
jmp 0x40d66e
mov eax, dword [esi + 4]
sub eax, 0x97cb1217
je 0x40f4cf
jmp 0x40d681
mov eax, dword [esi + 4]
sub eax, 0x9805e73b
je 0x40e03f
jmp 0x40d694
mov eax, dword [esi + 4]
sub eax, 0x9da088c5
je 0x40e6dc
jmp 0x40d6a7
mov eax, dword [esi + 4]
sub eax, 0xa1b7ec67
je 0x40e41e
jmp 0x40d6ba
mov eax, dword [esi + 4]
sub eax, 0xa2f37c20
je 0x40fe9b
jmp 0x40d6cd
mov eax, dword [esi + 4]
sub eax, 0xa4784b54
je 0x40e278
jmp 0x40d6e0
mov eax, dword [esi + 4]
sub eax, 0xa951b525
je 0x40fae8
jmp 0x40d6f3
mov eax, dword [esi + 4]
sub eax, 0xab05735e
je 0x40faa4
jmp 0x40d706
mov eax, dword [esi + 4]
sub eax, 0xab427569
je 0x40f8fe
jmp 0x40d719
mov eax, dword [esi + 4]
sub eax, 0xadb70a59
je 0x40f3b2
jmp 0x40d72c
mov eax, dword [esi + 4]
sub eax, 0xb3f9504d
je 0x40efe7
jmp 0x40d73f
mov eax, dword [esi + 4]
sub eax, 0xbb50c599
je 0x40f98d
jmp 0x40d752
mov eax, dword [esi + 4]
sub eax, 0xc0834117
je 0x40f05a
jmp 0x40d765
mov eax, dword [esi + 4]
sub eax, 0xc2d1261c
je 0x40f63c
jmp 0x40d778
mov eax, dword [esi + 4]
sub eax, 0xc31b4dd5
je 0x40f2f4
jmp 0x40d78b
mov eax, dword [esi + 4]
sub eax, 0xc51d87e2
je 0x40f0c3
jmp 0x40d79e
mov eax, dword [esi + 4]
sub eax, 0xc554c9be
je 0x40e881
jmp 0x40d7b1
mov eax, dword [esi + 4]
sub eax, 0xc649ff8c
je 0x40e861
jmp 0x40d7c4
mov eax, dword [esi + 4]
sub eax, 0xc7c54b6a
je 0x40e42a
jmp 0x40d7d7
mov eax, dword [esi + 4]
sub eax, 0xc88cc546
je 0x40f542
jmp 0x40d7ea
mov eax, dword [esi + 4]
sub eax, 0xc9c00b82
je 0x40fa98
jmp 0x40d7fd
mov eax, dword [esi + 4]
sub eax, 0xcdf891ae
je 0x40e35d
jmp 0x40d810
mov eax, dword [esi + 4]
sub eax, 0xce3fd556
je 0x40f87f
jmp 0x40d823
mov eax, dword [esi + 4]
sub eax, 0xd1031980
je 0x40f5ee
jmp 0x40d836
mov eax, dword [esi + 4]
sub eax, 0xd1033c99
je 0x40fcf8
jmp 0x40d849
mov eax, dword [esi + 4]
sub eax, 0xd6174145
je 0x40f126
jmp 0x40d85c
mov eax, dword [esi + 4]
sub eax, 0xd8644594
je 0x40ea5c
jmp 0x40d86f
mov eax, dword [esi + 4]
sub eax, 0xd9abc5c9
je 0x40f981
jmp 0x40d882
mov eax, dword [esi + 4]
sub eax, 0xdb939983
je 0x40dfcc
jmp 0x40d895
mov eax, dword [esi + 4]
sub eax, 0xdc093afa
je 0x40fe5b
jmp 0x40d8a8
mov eax, dword [esi + 4]
sub eax, 0xe26a464a
je 0x40f132
jmp 0x40d8bb
mov eax, dword [esi + 4]
sub eax, 0xe4a1d63e
je 0x40ec1b
jmp 0x40d8ce
mov eax, dword [esi + 4]
sub eax, 0xe75a2215
je 0x40fe4c
jmp 0x40d8e1
mov eax, dword [esi + 4]
sub eax, 0xe8a4f108
je 0x40e218
jmp 0x40d8f4
mov eax, dword [esi + 4]
sub eax, 0xe9f20e23
je 0x40e855
jmp 0x40d907
mov eax, dword [esi + 4]
sub eax, 0xec6c602c
je 0x40f4ba
jmp 0x40d91a
mov eax, dword [esi + 4]
sub eax, 0xecca8248
je 0x40f280
jmp 0x40d92d
mov eax, dword [esi + 4]
sub eax, 0xee2b80c6
je 0x40eef9
jmp 0x40d940
mov eax, dword [esi + 4]
sub eax, 0xeef1cdd5
je 0x40fce3
jmp 0x40d953
mov eax, dword [esi + 4]
sub eax, 0xef0d54a6
je 0x40f2e8
jmp 0x40d966
mov eax, dword [esi + 4]
sub eax, 0xf168e5b0
je 0x40e20c
jmp 0x40d979
mov eax, dword [esi + 4]
sub eax, 0xf1bc9d45
je 0x40f400
jmp 0x40d98c
mov eax, dword [esi + 4]
sub eax, 0xf2032ff4
je 0x40fde2
jmp 0x40d99f
mov eax, dword [esi + 4]
sub eax, 0xf2b356e5
je 0x40f5b9
jmp 0x40d9b2
mov eax, dword [esi + 4]
sub eax, 0xf40e1bab
je 0x40fdca
jmp 0x40d9c5
mov eax, dword [esi + 4]
sub eax, 0xf4d32434
je 0x40fc44
jmp 0x40d9d8
mov eax, dword [esi + 4]
sub eax, 0xf561951c
je 0x40fb53
jmp 0x40d9eb
mov eax, dword [esi + 4]
sub eax, 0xf596fc22
je 0x40fbd9
jmp 0x40d9fe
mov eax, dword [esi + 4]
sub eax, 0xfa3461b7
je 0x40f149
jmp 0x40da11
mov eax, dword [esi + 4]
sub eax, 0xfb8e4651
je 0x40ee7a
jmp 0x40da24
mov eax, dword [esi + 4]
sub eax, 0xdb1afb
je 0x40e3c8
jmp 0x40da37
mov eax, dword [esi + 4]
sub eax, 0x5365534
je 0x40e806
jmp 0x40da4a
mov eax, dword [esi + 4]
sub eax, 0xbe4b280
je 0x40ed95
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
mov edx, ecx
add edx, 0x60fcf94
sub edx, 1
sub edx, 0x60fcf94
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, 0x1db7d7d8
mov ecx, 0x9805e73b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
push eax
mov eax, esp
mov dword [esi + 0x18], eax
push eax
mov eax, esp
mov dword [esi + 0x1c], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x20], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x24], eax
push eax
sub esp, 0x14
mov eax, esp
mov dword [esi + 0x28], eax
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
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, 0x1db7d7d8
mov ecx, 0x219decfe
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0xe8a4f108
jmp 0x40feca
push eax
mov eax, esp
mov dword [esi + 0x3c], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x40], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x44], eax
push eax
mov eax, esp
mov dword [esi + 0x48], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x4c], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x50], eax
mov dword [esi + 0x10], 0x79e17403
jmp 0x40feca
mov eax, dword [esi + 0xc]
mov dword [esi + 0x64], eax
mov ecx, eax
add ecx, 0x1c
mov dword [esi + 0x68], ecx
add eax, 0x34
mov dword [esi + 0x6c], eax
mov dword [esi + 0x10], 0x165bcd46
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
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, 0x32988038
mov ecx, 0xdb1afb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov ecx, dword [esi + 8]
mov eax, dword [esi + 0x18]
mov dword [eax], ecx
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
mov edx, eax
add edx, 0xbb37033f
sub edx, 1
sub edx, 0xbb37033f
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, 0x32988038
mov ecx, 0xa1b7ec67
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0xc7c54b6a
jmp 0x40feca
mov eax, dword [esi + 0x18]
mov eax, dword [esi + 0x1c]
mov byte [eax], 1
mov ecx, dword [esi + 0x20]
lea eax, str.pauscfsaoebdqjfvyyzhhyzzdzfsfhomukvaegyksoypjzf
sub esp, 4
mov dword [esp], eax
call fcn.0043c490
mov eax, dword [esi + 0x24]
vmovsd xmm0, qword [0x47e1e8]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x28]
lea eax, str.pburriisnkkbksgoatsxpwxrrnyrjurtyvzrcnwesvx
sub esp, 4
mov dword [esp], eax
call fcn.0043c490
mov ecx, dword [esi + 0x2c]
lea eax, str.yflxlksqutifcnhgpbtydqplullpwpoyietsolowjmaswqwvqkcfllzxooqpcdiurmiifdgnbfcuxpacykzorvlqm
sub esp, 4
mov dword [esp], eax
call fcn.0043c490
mov ecx, dword [esi + 0x30]
lea eax, str.eoyylvoaqajdwsxzqiejpmigeusfilumwizhwqnoimuawkrtcxitpubqvjewwypxpbrpzzecrkextkycqwwglbmrpsh
sub esp, 4
mov dword [esp], eax
call fcn.0043c490
mov eax, dword [esi + 0x34]
mov dword [eax], 0x46b
mov eax, dword [esi + 0x38]
mov byte [eax], 0
mov eax, dword [esi + 0x3c]
mov byte [eax], 0
mov dword [esi + 0x10], 0x81b29f2d
jmp 0x40feca
mov ecx, dword [esi + 0x40]
lea eax, str.eoyylvoaqajdwsxzqiejpmigeusfilumwizhwqnoimuawkrtcxitpubqvjewwypxpbrpzzecrkextkycqwwglbmrpsh
sub esp, 4
mov dword [esp], eax
call fcn.0043c490
mov ecx, dword [esi + 0x44]
lea eax, str.eoyylvoaqajdwsxzqiejpmigeusfilumwizhwqnoimuawkrtcxitpubqvjewwypxpbrpzzecrkextkycqwwglbmrpsh
sub esp, 4
mov dword [esp], eax
call fcn.0043c490
mov dword [esi + 0x10], 0x48b96a39
jmp 0x40feca
mov dword [esi + 0x10], 0x6fa2971b
jmp 0x40feca
mov dl, byte [esi + 0x73]
mov eax, 0x42294589
mov ecx, 0x88317c09
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
mov edx, eax
add edx, 0xacfe1ad0
sub edx, 1
sub edx, 0xacfe1ad0
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, 0x7a5f9acc
mov ecx, 0x1fb6eaf0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
mov edx, ecx
sub edx, 0x5c052af4
sub edx, 1
add edx, 0x5c052af4
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, 0x510b169f
mov ecx, 0x5365534
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov eax, dword [esi + 0x48]
mov dword [eax], 0x5c
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
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, 0x510b169f
mov ecx, 0xe9f20e23
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0xc649ff8c
jmp 0x40feca
mov dword [esi + 0x10], 0x63488cdb
jmp 0x40feca
mov edx, dword [esi + 0x74]
mov eax, 0x52dec784
mov ecx, 0x67850277
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0x33ba2994
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
mov edx, ecx
add edx, 0x46dedc35
sub edx, 1
sub edx, 0x46dedc35
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, 0x8e067064
mov ecx, 0x42c859b3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
mov edx, eax
add edx, 0xd990bb16
sub edx, 1
sub edx, 0xd990bb16
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, 0xf40e1bab
mov ecx, 0x48ca7b6d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0x7bae56b2
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
mov edx, ecx
add edx, 0x14bf0df3
sub edx, 1
sub edx, 0x14bf0df3
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, 0xf2032ff4
mov ecx, 0x3d62b22a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
mov edx, ecx
add edx, 0xe082f3f7
sub edx, 1
sub edx, 0xe082f3f7
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, 0xf596fc22
mov ecx, 0xc0834117
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dl, byte [esi + 0x7f]
mov eax, 0x7cd7e236
mov ecx, 0x5a81f816
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov eax, dword [esi + 0x54]
mov dword [eax], 7
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
mov edx, eax
sub edx, 0x873110b5
sub edx, 1
add edx, 0x873110b5
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, 0xeef1cdd5
mov ecx, 0x1b851a44
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0xe26a464a
jmp 0x40feca
mov eax, dword [esi + 0x54]
mov eax, dword [eax]
mov dword [esi + 0x80], eax
mov dword [esi + 0x10], 0xfa3461b7
jmp 0x40feca
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
mov edx, eax
sub edx, 0x5ccb9401
sub edx, 1
add edx, 0x5ccb9401
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, 0x252533ff
mov ecx, 0x2c2d7fd2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov ecx, dword [esi + 0x88]
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 + 0x54]
mov dword [eax], ecx
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
mov edx, eax
sub edx, 0xbd2b902c
sub edx, 1
add edx, 0xbd2b902c
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, 0xd1033c99
mov ecx, 0xef0d54a6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0xe26a464a
jmp 0x40feca
mov dword [esi + 0x10], 0x7cd7e236
jmp 0x40feca
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
mov edx, eax
add edx, 0xdab19040
sub edx, 1
sub edx, 0xdab19040
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, 0x3f184075
mov ecx, 0xf1bc9d45
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
mov edx, eax
add edx, 0x1b413b7c
sub edx, 1
sub edx, 0x1b413b7c
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, 0x6268e70a
mov ecx, 0x61e122c4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov eax, dword [esi + 0x60]
mov dword [eax], 0x1d
mov dword [esi + 0x10], 0x97cb1217
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
mov edx, ecx
add edx, 0x415a357c
sub edx, 1
sub edx, 0x415a357c
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, 0x54901796
mov ecx, 0xc88cc546
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
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, 0x54901796
mov ecx, 0x834954cc
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0xf2b356e5
jmp 0x40feca
mov eax, dword [esi + 0x60]
mov eax, dword [eax]
mov dword [esi + 0x90], eax
mov dword [esi + 0x10], 0x502dfede
jmp 0x40feca
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
mov edx, eax
sub edx, 0x6efa5cba
sub edx, 1
add edx, 0x6efa5cba
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, 0x3ff302c2
mov ecx, 0xc2d1261c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
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, 0x3ff302c2
mov ecx, 0x6e9652e9
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
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, 0xdc093afa
mov ecx, 0xce3fd556
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0x8a19fe47
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
mov edx, ecx
add edx, 0x198f9914
sub edx, 1
sub edx, 0x198f9914
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, 0x74ce1c31
mov ecx, 0xab427569
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov ecx, dword [esi + 0x30]
call fcn.0043d460
mov ecx, dword [esi + 0x2c]
call fcn.0043d460
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
mov edx, ecx
add edx, 0x52fb2b7
sub edx, 1
sub edx, 0x52fb2b7
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, 0x74ce1c31
mov ecx, 0xd9abc5c9
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0xbb50c599
jmp 0x40feca
mov ecx, dword [esi + 0x28]
call fcn.0043d460
mov ecx, dword [esi + 0x20]
call fcn.0043d460
mov ecx, dword [esi + 0x64]
call fcn.0043d460
mov ecx, dword [esi + 0x68]
call fcn.0043d460
mov ecx, dword [esi + 0x6c]
call fcn.0043d460
mov al, 1
and al, 1
movzx eax, al
mov dword [esi], eax
mov ecx, dword [esi + 0x98]
xor ecx, ebp
call fcn.0046c3f0
mov eax, dword [esi]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x5c
mov dword [esi + 0x10], 0xdb939983
jmp 0x40feca
mov dword [esi + 0x10], 0x4648f0cc
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
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, 0x7b24cc13
mov ecx, 0xf561951c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov eax, dword [0x4866e8]
mov ecx, dword [0x4866e4]
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, 0x7b24cc13
mov ecx, 0x1db26c95
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
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, 0xa2f37c20
mov ecx, 0xf4d32434
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x50]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0043d9a0
add esp, 8
mov ecx, dword [esi + 0x50]
call fcn.0043d460
mov ecx, dword [esi + 0x4c]
call fcn.0043d460
mov ecx, dword [0x4866e8]
mov eax, dword [0x4866e4]
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, 0xa2f37c20
mov ecx, 0x8548c1e8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x10], eax
jmp 0x40feca
mov dword [esi + 0x10], 0xee2b80c6
jmp 0x40feca
mov eax, dword [esi + 0x54]
mov dword [eax], 7
mov dword [esi + 0x10], 0xc51d87e2
jmp 0x40feca
mov eax, dword [esi + 0x88]
mov eax, dword [esi + 0x88]
mov eax, dword [esi + 0x88]
mov eax, dword [esi + 0x88]
mov eax, dword [esi + 0x88]
mov eax, dword [esi + 0x88]
mov ecx, dword [esi + 0x88]
sub ecx, 0x739a4fd5
add ecx, 0xffffffff
add ecx, 0x739a4fd5
mov eax, dword [esi + 0x54]
mov dword [eax], ecx
mov dword [esi + 0x10], 0xecca8248
jmp 0x40feca
mov dword [esi + 0x10], 0x3815bd2b
jmp 0x40feca
mov dword [esi + 0x10], 0x8ded3b25
jmp 0x40feca
mov dword [esi + 0x10], 0xe4a1d63e
jmp 0x40feca
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x50]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0043d9a0
add esp, 8
mov ecx, dword [esi + 0x50]
call fcn.0043d460
mov ecx, dword [esi + 0x4c]
call fcn.0043d460
mov dword [esi + 0x10], 0x3d62b22a
jmp 0x40feca
mov eax, dword [esi + 0x60]
mov dword [esi + 0x10], 0x5f35c291
jmp 0x40feca
mov dword [esi + 0x10], 0x802ebe3e
jmp 0x40feca
mov dword [esi + 0x10], 0x3c54ce01
jmp 0x40feca
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x50]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0043d9a0
add esp, 8
mov ecx, dword [esi + 0x50]
call fcn.0043d460
mov ecx, dword [esi + 0x4c]
call fcn.0043d460
mov dword [esi + 0x10], 0xf4d32434
jmp 0x40d587