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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x90
mov esi, esp
mov dword [esi + 0xc], ecx
mov eax, dword [ebp + 8]
mov dword [esi + 0x10], eax
mov dword [esi + 0x14], eax
mov eax, dword [0x442080]
xor eax, ebp
mov dword [esi + 0x88], eax
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
mov edx, ecx
add edx, 0xa106b5e6
sub edx, 1
sub edx, 0xa106b5e6
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], 0x31940156
mov eax, dword [esi + 0x1c]
mov dword [esi + 8], eax
sub eax, 0x88985123
je 0x40d7b3
jmp 0x40c850
mov eax, dword [esi + 8]
sub eax, 0x8a6d99d6
je 0x40cd8d
jmp 0x40c863
mov eax, dword [esi + 8]
sub eax, 0x923e4c36
je 0x40d1c5
jmp 0x40c876
mov eax, dword [esi + 8]
sub eax, 0x93d2bbf0
je 0x40d332
jmp 0x40c889
mov eax, dword [esi + 8]
sub eax, 0x9891aa13
je 0x40d04e
jmp 0x40c89c
mov eax, dword [esi + 8]
sub eax, 0xad8728ec
je 0x40d169
jmp 0x40c8af
mov eax, dword [esi + 8]
sub eax, 0xaf274abd
je 0x40d5fe
jmp 0x40c8c2
mov eax, dword [esi + 8]
sub eax, 0xaf5a63e6
je 0x40d1e6
jmp 0x40c8d5
mov eax, dword [esi + 8]
sub eax, 0xbe63a2af
je 0x40cf26
jmp 0x40c8e8
mov eax, dword [esi + 8]
sub eax, 0xcc6eef1b
je 0x40cf87
jmp 0x40c8fb
mov eax, dword [esi + 8]
sub eax, 0xcdc9a294
je 0x40d184
jmp 0x40c90e
mov eax, dword [esi + 8]
sub eax, 0xdf59cdf4
je 0x40d008
jmp 0x40c921
mov eax, dword [esi + 8]
sub eax, 0xe4ab7c8b
je 0x40d60a
jmp 0x40c934
mov eax, dword [esi + 8]
sub eax, 0xec7b6d38
je 0x40d408
jmp 0x40c947
mov eax, dword [esi + 8]
sub eax, 0xef9dd9ba
je 0x40d6cf
jmp 0x40c95a
mov eax, dword [esi + 8]
sub eax, 0xefc62c0d
je 0x40d063
jmp 0x40c96d
mov eax, dword [esi + 8]
sub eax, 0xf101b09e
je 0x40d155
jmp 0x40c980
mov eax, dword [esi + 8]
sub eax, 0xf43ecd13
je 0x40d2bb
jmp 0x40c993
mov eax, dword [esi + 8]
sub eax, 0xfc8fc3d5
je 0x40d588
jmp 0x40c9a6
mov eax, dword [esi + 8]
sub eax, 0x1e70419
je 0x40ce57
jmp 0x40c9b9
mov eax, dword [esi + 8]
sub eax, 0xc4f9da5
je 0x40d719
jmp 0x40c9cc
mov eax, dword [esi + 8]
sub eax, 0xde5b7a1
je 0x40d3a9
jmp 0x40c9df
mov eax, dword [esi + 8]
sub eax, 0xec4d9e0
je 0x40cf46
jmp 0x40c9f2
mov eax, dword [esi + 8]
sub eax, 0x10b88bb7
je 0x40d7a4
jmp 0x40ca05
mov eax, dword [esi + 8]
sub eax, 0x1260df5c
je 0x40cf7b
jmp 0x40ca18
mov eax, dword [esi + 8]
sub eax, 0x189a3025
je 0x40d33e
jmp 0x40ca2b
mov eax, dword [esi + 8]
sub eax, 0x18fa64ac
je 0x40d0d6
jmp 0x40ca3e
mov eax, dword [esi + 8]
sub eax, 0x1bbc9911
je 0x40d1b1
jmp 0x40ca51
mov eax, dword [esi + 8]
sub eax, 0x203d941c
je 0x40cf32
jmp 0x40ca64
mov eax, dword [esi + 8]
sub eax, 0x20c1e572
je 0x40cfe8
jmp 0x40ca77
mov eax, dword [esi + 8]
sub eax, 0x2444a79d
je 0x40cfc8
jmp 0x40ca8a
mov eax, dword [esi + 8]
sub eax, 0x252e0a77
je 0x40d7d9
jmp 0x40ca9d
mov eax, dword [esi + 8]
sub eax, 0x2a0db136
je 0x40d2c7
jmp 0x40cab0
mov eax, dword [esi + 8]
sub eax, 0x2d25445d
je 0x40cd81
jmp 0x40cac3
mov eax, dword [esi + 8]
sub eax, 0x31940156
je 0x40ccc9
jmp 0x40cad6
mov eax, dword [esi + 8]
sub eax, 0x33d7a93a
je 0x40d650
jmp 0x40cae9
mov eax, dword [esi + 8]
sub eax, 0x39054de4
je 0x40d1d1
jmp 0x40cafc
mov eax, dword [esi + 8]
sub eax, 0x40f29b69
je 0x40d432
jmp 0x40cb0f
mov eax, dword [esi + 8]
sub eax, 0x42c88368
je 0x40d789
jmp 0x40cb22
mov eax, dword [esi + 8]
sub eax, 0x430fdd77
je 0x40d6db
jmp 0x40cb35
mov eax, dword [esi + 8]
sub eax, 0x43f636ef
je 0x40d2e2
jmp 0x40cb48
mov eax, dword [esi + 8]
sub eax, 0x44b7fa61
je 0x40d43e
jmp 0x40cb5b
mov eax, dword [esi + 8]
sub eax, 0x4715bf81
je 0x40d795
jmp 0x40cb6e
mov eax, dword [esi + 8]
sub eax, 0x4eb0ad17
je 0x40d414
jmp 0x40cb81
mov eax, dword [esi + 8]
sub eax, 0x5443d4ae
je 0x40d31d
jmp 0x40cb94
mov eax, dword [esi + 8]
sub eax, 0x56cd3845
je 0x40d51d
jmp 0x40cba7
mov eax, dword [esi + 8]
sub eax, 0x5887173d
je 0x40d149
jmp 0x40cbba
mov eax, dword [esi + 8]
sub eax, 0x5c8a5279
je 0x40d1f2
jmp 0x40cbcd
mov eax, dword [esi + 8]
sub eax, 0x5dd65d23
je 0x40d190
jmp 0x40cbe0
mov eax, dword [esi + 8]
sub eax, 0x6048cd7d
je 0x40d7c2
jmp 0x40cbf3
mov eax, dword [esi + 8]
sub eax, 0x64daea0d
je 0x40d511
jmp 0x40cc06
mov eax, dword [esi + 8]
sub eax, 0x65578808
je 0x40d240
jmp 0x40cc19
mov eax, dword [esi + 8]
sub eax, 0x66235afd
je 0x40cfa8
jmp 0x40cc2c
mov eax, dword [esi + 8]
sub eax, 0x67530faa
je 0x40d70d
jmp 0x40cc3f
mov eax, dword [esi + 8]
sub eax, 0x69d5d217
je 0x40d302
jmp 0x40cc52
mov eax, dword [esi + 8]
sub eax, 0x73a200cb
je 0x40cfbc
jmp 0x40cc65
mov eax, dword [esi + 8]
sub eax, 0x7720f808
je 0x40d484
jmp 0x40cc78
mov eax, dword [esi + 8]
sub eax, 0x7ae3708c
je 0x40d2ee
jmp 0x40cc8b
mov eax, dword [esi + 8]
sub eax, 0x7c4bcb0d
je 0x40ce11
jmp 0x40cc9e
mov eax, dword [esi + 8]
sub eax, 0x7e240d5d
je 0x40cf60
jmp 0x40ccb1
mov eax, dword [esi + 8]
sub eax, 0x7e52981a
je 0x40ccef
jmp 0x40ccc4
jmp 0x40d7f4
mov al, byte [esi + 0x22]
mov cl, byte [esi + 0x23]
mov dl, al
and dl, cl
xor al, cl
or dl, al
mov eax, 0x67530faa
mov ecx, 0x7e52981a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
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
push eax
mov eax, esp
mov dword [esi + 0x30], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x34], eax
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
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, 0x67530faa
mov ecx, 0x2d25445d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x8a6d99d6
jmp 0x40d7f4
mov ecx, dword [esi + 0xc]
mov edx, dword [esi + 0x10]
push eax
push eax
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x38], eax
push eax
sub esp, 0x14
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
push eax
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
push eax
mov eax, esp
mov dword [esi + 0x5c], eax
push eax
mov eax, esp
mov dword [esi + 0x60], eax
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.wfivkndupjoxwhbxbkq
sub esp, 4
mov dword [esp], eax
call fcn.00420de0
mov dword [esi + 0x1c], 0x7c4bcb0d
jmp 0x40d7f4
mov eax, dword [0x44359c]
mov ecx, dword [0x443598]
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, 0xc4f9da5
mov ecx, 0x1e70419
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov eax, dword [esi + 0x30]
mov dword [eax], 0x364
mov eax, dword [esi + 0x34]
vmovsd xmm0, qword [0x43a2f8]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x38]
vmovsd xmm0, qword [0x43a2f0]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x3c]
lea eax, str.azszlqlwzgxtnlkdkoqrajjbjubeodegljfoovyabsmxsdjqgfkzviozdlnfgzbrmnninynlqesmeqhnrcrlrktjoyoxivjthdbk
sub esp, 4
mov dword [esp], eax
call fcn.00420de0
mov eax, dword [esi + 0x40]
mov byte [eax], 0
mov ecx, dword [esi + 0x44]
lea eax, str.aojaffarncgbiybqbwucspuwulnrmbwtoytlhhfzxo
sub esp, 4
mov dword [esp], eax
call fcn.00420de0
mov eax, dword [esi + 0x48]
mov byte [eax], 1
mov eax, dword [esi + 0x4c]
mov dword [eax], 0x22
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
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, 0xc4f9da5
mov ecx, 0xbe63a2af
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x203d941c
jmp 0x40d7f4
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
mov dword [esi + 0x64], eax
mov dword [esi + 0x1c], 0xec4d9e0
jmp 0x40d7f4
mov eax, dword [esi + 0x64]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x6b], al
mov dword [esi + 0x1c], 0x7e240d5d
jmp 0x40d7f4
mov dl, byte [esi + 0x6b]
mov eax, 0x2444a79d
mov ecx, 0x1260df5c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0xcc6eef1b
jmp 0x40d7f4
mov eax, dword [esi + 0x4c]
mov eax, dword [eax]
sub eax, 0xc1738442
add eax, 0xffffffff
add eax, 0xc1738442
mov dword [esi + 0x6c], eax
mov dword [esi + 0x1c], 0x66235afd
jmp 0x40d7f4
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x6c]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0x73a200cb
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x203d941c
jmp 0x40d7f4
mov ecx, dword [esi + 0x50]
lea eax, str.aojaffarncgbiybqbwucspuwulnrmbwtoytlhhfzxo
sub esp, 4
mov dword [esp], eax
call fcn.00420de0
mov dword [esi + 0x1c], 0x20c1e572
jmp 0x40d7f4
mov ecx, dword [esi + 0x54]
lea eax, str.aojaffarncgbiybqbwucspuwulnrmbwtoytlhhfzxo
sub esp, 4
mov dword [esp], eax
call fcn.00420de0
mov dword [esi + 0x1c], 0xdf59cdf4
jmp 0x40d7f4
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x54]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.004210f0
add esp, 8
mov byte [esi + 7], al
mov ecx, dword [esi + 0x54]
call fcn.00420eb0
mov ecx, dword [esi + 0x50]
call fcn.00420eb0
mov dl, byte [esi + 7]
mov eax, 0x39054de4
mov ecx, 0x9891aa13
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov eax, dword [esi + 0x58]
mov dword [eax], 0x26
mov dword [esi + 0x1c], 0xefc62c0d
jmp 0x40d7f4
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
mov edx, ecx
sub edx, 0x8d936464
sub edx, 1
add edx, 0x8d936464
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, 0x42c88368
mov ecx, 0x18fa64ac
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
mov edx, ecx
add edx, 0x834a0249
sub edx, 1
sub edx, 0x834a0249
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, 0x42c88368
mov ecx, 0x5887173d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0xf101b09e
jmp 0x40d7f4
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov dword [esi + 0x70], eax
mov dword [esi + 0x1c], 0xad8728ec
jmp 0x40d7f4
mov edx, dword [esi + 0x70]
mov eax, 0x923e4c36
mov ecx, 0xcdc9a294
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x5dd65d23
jmp 0x40d7f4
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
sub eax, 0xb7782ea9
add eax, 0xffffffff
add eax, 0xb7782ea9
mov dword [esi + 0x74], eax
mov dword [esi + 0x1c], 0x1bbc9911
jmp 0x40d7f4
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x74]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0xf101b09e
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x39054de4
jmp 0x40d7f4
mov eax, dword [esi + 0x5c]
mov dword [eax], 0x5e
mov dword [esi + 0x1c], 0xaf5a63e6
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x5c8a5279
jmp 0x40d7f4
mov eax, dword [0x44359c]
mov ecx, dword [0x443598]
mov edx, eax
sub edx, 0x9d2889e7
sub edx, 1
add edx, 0x9d2889e7
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, 0x4715bf81
mov ecx, 0x65578808
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
mov dword [esi + 0x78], eax
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
mov edx, ecx
sub edx, 0xdd44c1f
sub edx, 1
add edx, 0xdd44c1f
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, 0x4715bf81
mov ecx, 0xf43ecd13
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x2a0db136
jmp 0x40d7f4
mov edx, dword [esi + 0x78]
mov eax, 0x5443d4ae
mov ecx, 0x43f636ef
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x7ae3708c
jmp 0x40d7f4
mov eax, dword [esi + 0x5c]
mov eax, dword [eax]
mov dword [esi + 0x7c], eax
mov dword [esi + 0x1c], 0x69d5d217
jmp 0x40d7f4
mov ecx, dword [esi + 0x7c]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x5c]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0x5c8a5279
jmp 0x40d7f4
mov eax, dword [esi + 0x60]
mov dword [eax], 0x17
mov dword [esi + 0x1c], 0x93d2bbf0
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x189a3025
jmp 0x40d7f4
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
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, 0x10b88bb7
mov ecx, 0xde5b7a1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov eax, dword [esi + 0x60]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x83], al
mov eax, dword [0x44359c]
mov ecx, dword [0x443598]
mov edx, eax
add edx, 0xdb785b3
sub edx, 1
sub edx, 0xdb785b3
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, 0x10b88bb7
mov ecx, 0xec7b6d38
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x4eb0ad17
jmp 0x40d7f4
mov dl, byte [esi + 0x83]
mov eax, 0xe4ab7c8b
mov ecx, 0x40f29b69
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x44b7fa61
jmp 0x40d7f4
mov eax, dword [0x44359c]
mov ecx, dword [0x443598]
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, 0x88985123
mov ecx, 0x7720f808
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov eax, dword [esi + 0x60]
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 + 0x84], eax
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
mov edx, ecx
add edx, 0xae481ff9
sub edx, 1
sub edx, 0xae481ff9
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, 0x88985123
mov ecx, 0x64daea0d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x56cd3845
jmp 0x40d7f4
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
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, 0x6048cd7d
mov ecx, 0xfc8fc3d5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov eax, dword [esi + 0x60]
mov ecx, dword [esi + 0x84]
mov dword [eax], ecx
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
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, 0x6048cd7d
mov ecx, 0xaf274abd
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x189a3025
jmp 0x40d7f4
mov eax, dword [0x44359c]
mov ecx, dword [0x443598]
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, 0x252e0a77
mov ecx, 0x33d7a93a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov ecx, dword [esi + 0x10]
lea eax, str.rmugagmjrmvttwmgzt
sub esp, 4
mov dword [esp], eax
call fcn.00420de0
mov ecx, dword [0x44359c]
mov eax, dword [0x443598]
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, 0x252e0a77
mov ecx, 0xef9dd9ba
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x430fdd77
jmp 0x40d7f4
mov ecx, dword [esi + 0x44]
call fcn.00420eb0
mov ecx, dword [esi + 0x3c]
call fcn.00420eb0
mov ecx, dword [esi + 0x2c]
call fcn.00420eb0
mov ecx, dword [esi + 0x88]
xor ecx, ebp
call fcn.0042af10
mov eax, dword [esi + 0x14]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 4
mov dword [esi + 0x1c], 0x7e52981a
jmp 0x40d7f4
mov eax, dword [esi + 0x30]
mov dword [eax], 0x364
mov eax, dword [esi + 0x34]
vmovsd xmm0, qword [0x43a2f8]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x38]
vmovsd xmm0, qword [0x43a2f0]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x3c]
lea eax, str.azszlqlwzgxtnlkdkoqrajjbjubeodegljfoovyabsmxsdjqgfkzviozdlnfgzbrmnninynlqesmeqhnrcrlrktjoyoxivjthdbk
sub esp, 4
mov dword [esp], eax
call fcn.00420de0
mov eax, dword [esi + 0x40]
mov byte [eax], 0
mov ecx, dword [esi + 0x44]
lea eax, str.aojaffarncgbiybqbwucspuwulnrmbwtoytlhhfzxo
sub esp, 4
mov dword [esp], eax
call fcn.00420de0
mov eax, dword [esi + 0x48]
mov byte [eax], 1
mov eax, dword [esi + 0x4c]
mov dword [eax], 0x22
mov dword [esi + 0x1c], 0x1e70419
jmp 0x40d7f4
mov dword [esi + 0x1c], 0x18fa64ac
jmp 0x40d7f4
mov eax, dword [esi + 0x5c]
mov dword [esi + 0x1c], 0x65578808
jmp 0x40d7f4
mov eax, dword [esi + 0x60]
mov dword [esi + 0x1c], 0xde5b7a1
jmp 0x40d7f4
mov eax, dword [esi + 0x60]
mov dword [esi + 0x1c], 0x7720f808
jmp 0x40d7f4
mov eax, dword [esi + 0x60]
mov ecx, dword [esi + 0x84]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0xfc8fc3d5
jmp 0x40d7f4
mov ecx, dword [esi + 0x10]
lea eax, str.rmugagmjrmvttwmgzt
sub esp, 4
mov dword [esp], eax
call fcn.00420de0
mov dword [esi + 0x1c], 0x33d7a93a
jmp 0x40c83a