Function at 0x40e680
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 + 0x20], ecx
mov al, byte [ebp + 0x10]
mov byte [esi + 0x25], al
mov al, byte [ebp + 0xc]
mov byte [esi + 0x26], al
mov al, byte [ebp + 8]
mov byte [esi + 0x27], al
mov eax, dword [0x449080]
xor eax, ebp
mov dword [esi + 0x78], eax
mov ecx, dword [0x44a5b4]
mov eax, dword [0x44a5b0]
mov edx, ecx
add edx, 0x23e6f5e6
sub edx, 1
sub edx, 0x23e6f5e6
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x2e], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x2f], al
mov dword [esi + 0x28], 0xce60c1e0
mov eax, dword [esi + 0x28]
mov dword [esi + 0x1c], eax
sub eax, 0x9128f394
je 0x40f5ee
jmp 0x40e706
mov eax, dword [esi + 0x1c]
sub eax, 0x92f9615d
je 0x40f3c4
jmp 0x40e719
mov eax, dword [esi + 0x1c]
sub eax, 0x94cf1008
je 0x40f04d
jmp 0x40e72c
mov eax, dword [esi + 0x1c]
sub eax, 0x95aa4a53
je 0x40f074
jmp 0x40e73f
mov eax, dword [esi + 0x1c]
sub eax, 0x9653abdf
je 0x40f142
jmp 0x40e752
mov eax, dword [esi + 0x1c]
sub eax, 0x9ed0399f
je 0x40edbe
jmp 0x40e765
mov eax, dword [esi + 0x1c]
sub eax, 0xa25074e1
je 0x40f603
jmp 0x40e778
mov eax, dword [esi + 0x1c]
sub eax, 0xa594477f
je 0x40f059
jmp 0x40e78b
mov eax, dword [esi + 0x1c]
sub eax, 0xb01fdb76
je 0x40ee20
jmp 0x40e79e
mov eax, dword [esi + 0x1c]
sub eax, 0xb4eea416
je 0x40f1f3
jmp 0x40e7b1
mov eax, dword [esi + 0x1c]
sub eax, 0xb5aa7f47
je 0x40ee41
jmp 0x40e7c4
mov eax, dword [esi + 0x1c]
sub eax, 0xb8270cbe
je 0x40f55a
jmp 0x40e7d7
mov eax, dword [esi + 0x1c]
sub eax, 0xbaaa8b6b
je 0x40edf9
jmp 0x40e7ea
mov eax, dword [esi + 0x1c]
sub eax, 0xbba5abee
je 0x40edd3
jmp 0x40e7fd
mov eax, dword [esi + 0x1c]
sub eax, 0xbe07c54e
je 0x40f586
jmp 0x40e810
mov eax, dword [esi + 0x1c]
sub eax, 0xc1268bfb
je 0x40ef8d
jmp 0x40e823
mov eax, dword [esi + 0x1c]
sub eax, 0xc456c1cb
je 0x40ef33
jmp 0x40e836
mov eax, dword [esi + 0x1c]
sub eax, 0xc7db9310
je 0x40f40a
jmp 0x40e849
mov eax, dword [esi + 0x1c]
sub eax, 0xca56c0af
je 0x40eb96
jmp 0x40e85c
mov eax, dword [esi + 0x1c]
sub eax, 0xce60c1e0
je 0x40eae7
jmp 0x40e86f
mov eax, dword [esi + 0x1c]
sub eax, 0xd1f08593
je 0x40f213
jmp 0x40e882
mov eax, dword [esi + 0x1c]
sub eax, 0xe90dd739
je 0x40eb8a
jmp 0x40e895
mov eax, dword [esi + 0x1c]
sub eax, 0xefbd8790
je 0x40ee14
jmp 0x40e8a8
mov eax, dword [esi + 0x1c]
sub eax, 0xf0c30a72
je 0x40f4df
jmp 0x40e8bb
mov eax, dword [esi + 0x1c]
sub eax, 0xf65dcf76
je 0x40f2ff
jmp 0x40e8ce
mov eax, dword [esi + 0x1c]
sub eax, 0xf906f986
je 0x40f372
jmp 0x40e8e1
mov eax, dword [esi + 0x1c]
sub eax, 0x5b5d8ff
je 0x40f0df
jmp 0x40e8f4
mov eax, dword [esi + 0x1c]
sub eax, 0x6782185
je 0x40f136
jmp 0x40e907
mov eax, dword [esi + 0x1c]
sub eax, 0x6c10e7b
je 0x40f1ff
jmp 0x40e91a
mov eax, dword [esi + 0x1c]
sub eax, 0x8b54b58
je 0x40f60f
jmp 0x40e92d
mov eax, dword [esi + 0x1c]
sub eax, 0x1049ffc0
je 0x40eec8
jmp 0x40e940
mov eax, dword [esi + 0x1c]
sub eax, 0x16dcc9be
je 0x40f64c
jmp 0x40e953
mov eax, dword [esi + 0x1c]
sub eax, 0x16de23fe
je 0x40f46c
jmp 0x40e966
mov eax, dword [esi + 0x1c]
sub eax, 0x1c4f339a
je 0x40f56e
jmp 0x40e979
mov eax, dword [esi + 0x1c]
sub eax, 0x29fbbe87
je 0x40eb32
jmp 0x40e98c
mov eax, dword [esi + 0x1c]
sub eax, 0x2f35995a
je 0x40f638
jmp 0x40e99f
mov eax, dword [esi + 0x1c]
sub eax, 0x337ad9be
je 0x40f23a
jmp 0x40e9b2
mov eax, dword [esi + 0x1c]
sub eax, 0x397c2384
je 0x40ef3f
jmp 0x40e9c5
mov eax, dword [esi + 0x1c]
sub eax, 0x3bbab67a
je 0x40ec4e
jmp 0x40e9d8
mov eax, dword [esi + 0x1c]
sub eax, 0x3c60b68c
je 0x40f62c
jmp 0x40e9eb
mov eax, dword [esi + 0x1c]
sub eax, 0x4c1d152b
je 0x40f288
jmp 0x40e9fe
mov eax, dword [esi + 0x1c]
sub eax, 0x4c20fc0f
je 0x40f57a
jmp 0x40ea11
mov eax, dword [esi + 0x1c]
sub eax, 0x5105eefa
je 0x40f2f3
jmp 0x40ea24
mov eax, dword [esi + 0x1c]
sub eax, 0x52bbf74b
je 0x40f22e
jmp 0x40ea37
mov eax, dword [esi + 0x1c]
sub eax, 0x5a407d91
je 0x40eddf
jmp 0x40ea4a
mov eax, dword [esi + 0x1c]
sub eax, 0x5c214494
je 0x40f592
jmp 0x40ea5d
mov eax, dword [esi + 0x1c]
sub eax, 0x5c7ce0b1
je 0x40f1ad
jmp 0x40ea70
mov eax, dword [esi + 0x1c]
sub eax, 0x5d097f7f
je 0x40f2e7
jmp 0x40ea83
mov eax, dword [esi + 0x1c]
sub eax, 0x5ea253a5
je 0x40f3b8
jmp 0x40ea96
mov eax, dword [esi + 0x1c]
sub eax, 0x67ca15b4
je 0x40ec42
jmp 0x40eaa9
mov eax, dword [esi + 0x1c]
sub eax, 0x68b18928
je 0x40ebe4
jmp 0x40eabc
mov eax, dword [esi + 0x1c]
sub eax, 0x73e63f98
je 0x40f460
jmp 0x40eacf
mov eax, dword [esi + 0x1c]
sub eax, 0x7505bc77
je 0x40ee55
jmp 0x40eae2
jmp 0x40f663
mov bl, byte [esi + 0x2e]
mov dh, byte [esi + 0x2f]
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, 0x1c4f339a
mov ecx, 0x29fbbe87
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
push eax
mov eax, esp
mov dword [esi + 0x30], eax
push eax
mov eax, esp
mov dword [esi + 0x34], eax
push eax
mov eax, esp
mov dword [esi + 0x38], eax
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
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, 0x1c4f339a
mov ecx, 0xe90dd739
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0xca56c0af
jmp 0x40f663
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
mov edx, eax
add edx, 0xac323ae2
sub edx, 1
sub edx, 0xac323ae2
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, 0x4c20fc0f
mov ecx, 0x68b18928
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
push eax
mov eax, esp
mov dword [esi + 0x3c], eax
push eax
mov eax, esp
mov dword [esi + 0x40], eax
push eax
mov eax, esp
mov dword [esi + 0x44], eax
push eax
mov eax, esp
mov dword [esi + 0x48], eax
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
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, 0x4c20fc0f
mov ecx, 0x67ca15b4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0x3bbab67a
jmp 0x40f663
mov bl, byte [esi + 0x27]
mov bh, byte [esi + 0x26]
mov dl, byte [esi + 0x25]
push eax
mov eax, esp
sub esp, 0x18
mov ecx, esp
mov dword [esi + 0x4c], ecx
sub esp, 0x18
mov ecx, esp
mov dword [esi + 0x50], ecx
sub esp, 8
mov ecx, esp
and ecx, 0xfffffff8
mov dword [esi + 4], ecx
mov esp, ecx
push eax
sub esp, 0x14
mov ecx, esp
mov dword [esi + 0x54], ecx
push eax
mov ecx, esp
mov dword [esi + 8], ecx
push eax
mov ecx, esp
mov dword [esi + 0xc], ecx
sub esp, 0x18
mov ecx, esp
mov dword [esi + 0x14], ecx
sub esp, 0x18
mov ecx, esp
mov dword [esi + 0x10], ecx
push eax
mov ecx, esp
mov dword [esi + 0x58], ecx
sub esp, 0x18
mov ecx, esp
mov dword [esi + 0x5c], ecx
sub esp, 0x18
mov ecx, esp
mov dword [esi + 0x60], ecx
push eax
mov ecx, esp
mov dword [esi + 0x64], ecx
and dl, 1
mov ecx, dword [esi + 0x30]
mov byte [ecx], dl
mov edx, dword [esi + 0x20]
and bh, 1
mov ecx, dword [esi + 0x34]
mov byte [ecx], bh
and bl, 1
mov ecx, dword [esi + 0x38]
mov byte [ecx], bl
mov ecx, dword [esi + 0x3c]
mov dword [ecx], edx
mov ecx, dword [esi + 0x3c]
mov ecx, dword [esi + 0x40]
mov dword [ecx], 0x4b8
mov ecx, dword [esi + 0x44]
mov byte [ecx], 1
mov ecx, dword [esi + 0x48]
mov byte [ecx], 0
mov byte [eax], 1
mov ecx, dword [esi + 0x4c]
lea eax, str.hohvojxtgsupggdxjdhsulcryhnypnbwmlerxtufwameolwczstlsgpioevwxlkmygolp
sub esp, 4
mov dword [esp], eax
call fcn.004272c0
mov ecx, dword [esi + 0x50]
lea eax, str.gxqezlziizwbghnwkdqyuvcujnjgzmtxp
sub esp, 4
mov dword [esp], eax
call fcn.004272c0
mov eax, dword [esi + 4]
vmovsd xmm0, qword [0x441280]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x54]
lea eax, str.ozxqnkfiubmcgmxtifmassdhs
sub esp, 4
mov dword [esp], eax
call fcn.004272c0
mov edx, dword [esi + 8]
mov ecx, dword [esi + 0x14]
mov eax, dword [esi + 0xc]
mov dword [edx], 0x1150
mov dword [eax], 0xd67
lea eax, str.ozxqnkfiubmcgmxtifmassdhs
sub esp, 4
mov dword [esp], eax
call fcn.004272c0
mov ecx, dword [esi + 0x10]
lea eax, str.ozxqnkfiubmcgmxtifmassdhs
sub esp, 4
mov dword [esp], eax
call fcn.004272c0
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x14]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00427710
mov ecx, dword [esi + 0x10]
add esp, 8
mov byte [esi + 0x1b], al
call fcn.004277a0
mov ecx, dword [esi + 0x14]
call fcn.004277a0
mov dl, byte [esi + 0x1b]
mov eax, 0x397c2384
mov ecx, 0x9ed0399f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov eax, dword [esi + 0x58]
mov dword [eax], 0xd
mov dword [esi + 0x28], 0xbba5abee
jmp 0x40f663
mov dword [esi + 0x28], 0x5a407d91
jmp 0x40f663
mov eax, dword [esi + 0x58]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x6b], al
mov dword [esi + 0x28], 0xbaaa8b6b
jmp 0x40f663
mov dl, byte [esi + 0x6b]
mov eax, 0x7505bc77
mov ecx, 0xefbd8790
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0xb01fdb76
jmp 0x40f663
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
sub eax, 0xed47fade
add eax, 0xffffffff
add eax, 0xed47fade
mov dword [esi + 0x6c], eax
mov dword [esi + 0x28], 0xb5aa7f47
jmp 0x40f663
mov eax, dword [esi + 0x58]
mov ecx, dword [esi + 0x6c]
mov dword [eax], ecx
mov dword [esi + 0x28], 0x5a407d91
jmp 0x40f663
mov ecx, dword [0x44a5b4]
mov eax, dword [0x44a5b0]
mov edx, ecx
sub edx, 0xd8fefeae
sub edx, 1
add edx, 0xd8fefeae
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, 0xbe07c54e
mov ecx, 0x1049ffc0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov ecx, dword [0x44a5b4]
mov eax, dword [0x44a5b0]
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, 0xbe07c54e
mov ecx, 0xc456c1cb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0x397c2384
jmp 0x40f663
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
mov edx, eax
sub edx, 0xe362ee97
sub edx, 1
add edx, 0xe362ee97
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, 0x5c214494
mov ecx, 0xc1268bfb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov ecx, dword [esi + 0x5c]
lea eax, str.gxqezlziizwbghnwkdqyuvcujnjgzmtxp
sub esp, 4
mov dword [esp], eax
call fcn.004272c0
mov ecx, dword [esi + 0x60]
lea eax, str.gxqezlziizwbghnwkdqyuvcujnjgzmtxp
sub esp, 4
mov dword [esp], eax
call fcn.004272c0
mov eax, dword [esi + 0x5c]
mov ecx, dword [esi + 0x60]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00427710
add esp, 8
and al, 1
mov byte [esi + 0x73], al
mov ecx, dword [esi + 0x60]
call fcn.004277a0
mov ecx, dword [esi + 0x5c]
call fcn.004277a0
mov ecx, dword [0x44a5b4]
mov eax, dword [0x44a5b0]
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, 0x5c214494
mov ecx, 0x94cf1008
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0xa594477f
jmp 0x40f663
mov dl, byte [esi + 0x73]
mov eax, 0x92f9615d
mov ecx, 0x95aa4a53
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov ecx, dword [0x44a5b4]
mov eax, dword [0x44a5b0]
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, 0x9128f394
mov ecx, 0x5b5d8ff
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov eax, dword [esi + 0x64]
mov dword [eax], 0x5a
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
mov edx, eax
add edx, 0xd8ca6dc6
sub edx, 1
sub edx, 0xd8ca6dc6
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, 0x9128f394
mov ecx, 0x6782185
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0x9653abdf
jmp 0x40f663
mov ecx, dword [0x44a5b4]
mov eax, dword [0x44a5b0]
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, 0xa25074e1
mov ecx, 0x5c7ce0b1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
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, 0xa25074e1
mov ecx, 0xb4eea416
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0x6c10e7b
jmp 0x40f663
mov eax, dword [esi + 0x64]
mov eax, dword [eax]
mov dword [esi + 0x74], eax
mov dword [esi + 0x28], 0xd1f08593
jmp 0x40f663
mov edx, dword [esi + 0x74]
mov eax, 0xf65dcf76
mov ecx, 0x52bbf74b
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0x337ad9be
jmp 0x40f663
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
mov edx, eax
sub edx, 0x35a548c0
sub edx, 1
add edx, 0x35a548c0
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, 0x8b54b58
mov ecx, 0x4c1d152b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov eax, dword [esi + 0x64]
mov ecx, dword [eax]
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 + 0x64]
mov dword [eax], ecx
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
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, 0x8b54b58
mov ecx, 0x5d097f7f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0x5105eefa
jmp 0x40f663
mov dword [esi + 0x28], 0x6c10e7b
jmp 0x40f663
mov ecx, dword [0x44a5b4]
mov eax, dword [0x44a5b0]
mov edx, ecx
add edx, 0x22471e9f
sub edx, 1
sub edx, 0x22471e9f
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, 0x3c60b68c
mov ecx, 0xf906f986
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
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, 0x3c60b68c
mov ecx, 0x5ea253a5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0x92f9615d
jmp 0x40f663
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
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, 0x2f35995a
mov ecx, 0xc7db9310
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov ecx, dword [esi + 0x54]
call fcn.004277a0
mov eax, dword [0x44a5b4]
mov ecx, dword [0x44a5b0]
mov edx, eax
sub edx, 0xebc43689
sub edx, 1
add edx, 0xebc43689
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, 0x2f35995a
mov ecx, 0x73e63f98
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov dword [esi + 0x28], 0x16de23fe
jmp 0x40f663
mov ecx, dword [0x44a5b4]
mov eax, dword [0x44a5b0]
mov edx, ecx
add edx, 0x7b48e5d
sub edx, 1
sub edx, 0x7b48e5d
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, 0x16dcc9be
mov ecx, 0xf0c30a72
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov ecx, dword [esi + 0x50]
call fcn.004277a0
mov ecx, dword [esi + 0x4c]
call fcn.004277a0
mov ecx, dword [0x44a5b4]
mov eax, dword [0x44a5b0]
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, 0x16dcc9be
mov ecx, 0xb8270cbe
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x28], eax
jmp 0x40f663
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.00431640
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0xc
mov dword [esi + 0x28], 0x29fbbe87
jmp 0x40f663
mov dword [esi + 0x28], 0x68b18928
jmp 0x40f663
mov dword [esi + 0x28], 0x1049ffc0
jmp 0x40f663
mov ecx, dword [esi + 0x5c]
lea eax, str.gxqezlziizwbghnwkdqyuvcujnjgzmtxp
sub esp, 4
mov dword [esp], eax
call fcn.004272c0
mov ecx, dword [esi + 0x60]
lea eax, str.gxqezlziizwbghnwkdqyuvcujnjgzmtxp
sub esp, 4
mov dword [esp], eax
call fcn.004272c0
mov eax, dword [esi + 0x5c]
mov ecx, dword [esi + 0x60]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00427710
add esp, 8
mov ecx, dword [esi + 0x60]
call fcn.004277a0
mov ecx, dword [esi + 0x5c]
call fcn.004277a0
mov dword [esi + 0x28], 0xc1268bfb
jmp 0x40f663
mov eax, dword [esi + 0x64]
mov dword [eax], 0x5a
mov dword [esi + 0x28], 0x5b5d8ff
jmp 0x40f663
mov dword [esi + 0x28], 0x5c7ce0b1
jmp 0x40f663
mov eax, dword [esi + 0x64]
mov ecx, dword [eax]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x64]
mov dword [eax], ecx
mov dword [esi + 0x28], 0x4c1d152b
jmp 0x40f663
mov dword [esi + 0x28], 0xf906f986
jmp 0x40f663
mov ecx, dword [esi + 0x54]
call fcn.004277a0
mov dword [esi + 0x28], 0xc7db9310
jmp 0x40f663
mov ecx, dword [esi + 0x50]
call fcn.004277a0
mov ecx, dword [esi + 0x4c]
call fcn.004277a0
mov dword [esi + 0x28], 0xf0c30a72
jmp 0x40e6f0