Function at 0x408810
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 + 4], ecx
lea eax, [ebp + 8]
mov dword [esi + 8], eax
mov eax, dword [0x43d080]
xor eax, ebp
mov dword [esi + 0x78], eax
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
mov edx, ecx
add edx, 0x92141d5f
sub edx, 1
sub edx, 0x92141d5f
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x12], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x13], al
mov dword [esi + 0xc], 0x18bd11e0
mov eax, dword [esi + 0xc]
mov dword [esi], eax
sub eax, 0x8651ef67
je 0x409860
jmp 0x408889
mov eax, dword [esi]
sub eax, 0x87b4ea24
je 0x40983f
jmp 0x40889b
mov eax, dword [esi]
sub eax, 0x908fa8be
je 0x409db8
jmp 0x4088ad
mov eax, dword [esi]
sub eax, 0x93d6c11c
je 0x409950
jmp 0x4088bf
mov eax, dword [esi]
sub eax, 0x98f04aa9
je 0x4095c8
jmp 0x4088d1
mov eax, dword [esi]
sub eax, 0x9b027b9e
je 0x409081
jmp 0x4088e3
mov eax, dword [esi]
sub eax, 0x9b57829f
je 0x409854
jmp 0x4088f5
mov eax, dword [esi]
sub eax, 0x9faa8f2e
je 0x409681
jmp 0x408907
mov eax, dword [esi]
sub eax, 0xa15cf989
je 0x409824
jmp 0x408919
mov eax, dword [esi]
sub eax, 0xa46d1da3
je 0x409cfb
jmp 0x40892b
mov eax, dword [esi]
sub eax, 0xa82182ac
je 0x4099ea
jmp 0x40893d
mov eax, dword [esi]
sub eax, 0xa8ad28bf
je 0x40906d
jmp 0x40894f
mov eax, dword [esi]
sub eax, 0xab27855f
je 0x409a4c
jmp 0x408961
mov eax, dword [esi]
sub eax, 0xab531695
je 0x408dd7
jmp 0x408973
mov eax, dword [esi]
sub eax, 0xb09ba4a2
je 0x409d6b
jmp 0x408985
mov eax, dword [esi]
sub eax, 0xb2348046
je 0x409408
jmp 0x408997
mov eax, dword [esi]
sub eax, 0xb7c7edcf
je 0x409bcc
jmp 0x4089a9
mov eax, dword [esi]
sub eax, 0xba52c95b
je 0x40996b
jmp 0x4089bb
mov eax, dword [esi]
sub eax, 0xc02d5f0f
je 0x40930e
jmp 0x4089cd
mov eax, dword [esi]
sub eax, 0xc1bd7745
je 0x409d3b
jmp 0x4089df
mov eax, dword [esi]
sub eax, 0xc1cd5dcd
je 0x40969c
jmp 0x4089f1
mov eax, dword [esi]
sub eax, 0xc3631ab6
je 0x4091b4
jmp 0x408a03
mov eax, dword [esi]
sub eax, 0xd36fbe98
je 0x4094e5
jmp 0x408a15
mov eax, dword [esi]
sub eax, 0xd4e9b064
je 0x409cec
jmp 0x408a27
mov eax, dword [esi]
sub eax, 0xd95895c8
je 0x409423
jmp 0x408a39
mov eax, dword [esi]
sub eax, 0xdb448ef2
je 0x409d92
jmp 0x408a4b
mov eax, dword [esi]
sub eax, 0xdfe5e1ae
je 0x409abf
jmp 0x408a5d
mov eax, dword [esi]
sub eax, 0xe4ad7c22
je 0x409179
jmp 0x408a6f
mov eax, dword [esi]
sub eax, 0xe8a9ab6f
je 0x409a40
jmp 0x408a81
mov eax, dword [esi]
sub eax, 0xec049baa
je 0x409d5f
jmp 0x408a93
mov eax, dword [esi]
sub eax, 0xef9817b0
je 0x409d77
jmp 0x408aa5
mov eax, dword [esi]
sub eax, 0xf0436642
je 0x409b55
jmp 0x408ab7
mov eax, dword [esi]
sub eax, 0xf0c9f1a6
je 0x4094fd
jmp 0x408ac9
mov eax, dword [esi]
sub eax, 0xf6b9f847
je 0x409786
jmp 0x408adb
mov eax, dword [esi]
sub eax, 0x9b47d18
je 0x408e62
jmp 0x408aed
mov eax, dword [esi]
sub eax, 0xcb1f1c8
je 0x409b61
jmp 0x408aff
mov eax, dword [esi]
sub eax, 0x10d1b835
je 0x4091e7
jmp 0x408b11
mov eax, dword [esi]
sub eax, 0x1333347c
je 0x409471
jmp 0x408b23
mov eax, dword [esi]
sub eax, 0x15569224
je 0x4090f4
jmp 0x408b35
mov eax, dword [esi]
sub eax, 0x18bd11e0
je 0x408d8c
jmp 0x408b47
mov eax, dword [esi]
sub eax, 0x1b30b0ab
je 0x40931a
jmp 0x408b59
mov eax, dword [esi]
sub eax, 0x1b6a9d43
je 0x408ecb
jmp 0x408b6b
mov eax, dword [esi]
sub eax, 0x1cf93ef3
je 0x40960e
jmp 0x408b7d
mov eax, dword [esi]
sub eax, 0x1e1ee7da
je 0x409b49
jmp 0x408b8f
mov eax, dword [esi]
sub eax, 0x2c80ef58
je 0x409d50
jmp 0x408ba1
mov eax, dword [esi]
sub eax, 0x35ed19e3
je 0x409385
jmp 0x408bb3
mov eax, dword [esi]
sub eax, 0x36c1ffc3
je 0x40916d
jmp 0x408bc5
mov eax, dword [esi]
sub eax, 0x3727ae8e
je 0x40987a
jmp 0x408bd7
mov eax, dword [esi]
sub eax, 0x3930310d
je 0x4097b7
jmp 0x408be9
mov eax, dword [esi]
sub eax, 0x3a200df3
je 0x40977a
jmp 0x408bfb
mov eax, dword [esi]
sub eax, 0x42108ef4
je 0x4098e5
jmp 0x408c0d
mov eax, dword [esi]
sub eax, 0x42dd2146
je 0x409d1f
jmp 0x408c1f
mov eax, dword [esi]
sub eax, 0x4627e9c8
je 0x4097ab
jmp 0x408c31
mov eax, dword [esi]
sub eax, 0x467c3888
je 0x409286
jmp 0x408c43
mov eax, dword [esi]
sub eax, 0x4759e209
je 0x409c2a
jmp 0x408c55
mov eax, dword [esi]
sub eax, 0x48093742
je 0x409061
jmp 0x408c67
mov eax, dword [esi]
sub eax, 0x48dee181
je 0x409c56
jmp 0x408c79
mov eax, dword [esi]
sub eax, 0x4902b122
je 0x408f36
jmp 0x408c8b
mov eax, dword [esi]
sub eax, 0x495245be
je 0x409543
jmp 0x408c9d
mov eax, dword [esi]
sub eax, 0x4e445440
je 0x409194
jmp 0x408caf
mov eax, dword [esi]
sub eax, 0x5e5c1823
je 0x4095bc
jmp 0x408cc1
mov eax, dword [esi]
sub eax, 0x6056cc46
je 0x409c4a
jmp 0x408cd3
mov eax, dword [esi]
sub eax, 0x628bf0fc
je 0x40921b
jmp 0x408ce5
mov eax, dword [esi]
sub eax, 0x62ef17b3
je 0x409707
jmp 0x408cf7
mov eax, dword [esi]
sub eax, 0x63da7eda
je 0x4094f1
mov bl, byte [esi + 0x12]
mov dh, byte [esi + 0x13]
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, 0x6056cc46
mov ecx, 0xab531695
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
push eax
mov eax, esp
mov dword [esi + 0x14], eax
push eax
mov eax, esp
mov dword [esi + 0x18], eax
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
mov edx, ecx
sub edx, 0xbae567ff
sub edx, 1
add edx, 0xbae567ff
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, 0x6056cc46
mov ecx, 0x74c1ef49
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
push eax
mov eax, esp
mov dword [esi + 0x1c], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x20], eax
push eax
push eax
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
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x2c], eax
push eax
mov eax, esp
mov dword [esi + 0x30], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x34], eax
push eax
mov eax, esp
mov dword [esi + 0x38], eax
push eax
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
mov dword [esi + 0xc], 0x1b6a9d43
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0x48dee181
mov ecx, 0x4902b122
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov ecx, dword [esi + 4]
mov eax, dword [esi + 8]
push eax
sub esp, 0x14
mov edx, esp
mov dword [esi + 0x48], edx
push eax
mov edx, esp
mov dword [esi + 0x4c], edx
sub esp, 0x18
mov edx, esp
mov dword [esi + 0x50], edx
sub esp, 0x18
mov edx, esp
mov dword [esi + 0x54], edx
push eax
mov edx, esp
mov dword [esi + 0x58], edx
add eax, 0xc
mov dword [esi + 0x5c], eax
mov eax, dword [esi + 0x14]
mov dword [eax], ecx
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x18]
mov byte [eax], 0
mov eax, dword [esi + 0x1c]
mov byte [eax], 0
mov eax, dword [esi + 0x20]
vmovsd xmm0, qword [0x4351f8]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x24]
vmovsd xmm0, qword [0x4351f0]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x28]
lea eax, str.yusszzrhccqgfxrvxhjhivyssisfbmxoqrldodlyiafzqydti
sub esp, 4
mov dword [esp], eax
call fcn.0041b320
mov eax, dword [esi + 0x2c]
vmovsd xmm0, qword [0x4351e8]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x30]
mov byte [eax], 0
mov ecx, dword [esi + 0x34]
lea eax, str.qqrscoyclggmruijgovdpccjoizbsetwexcaeelhaqxjlkjbsymnwilefylcsaphdcrmgsnabxlgmswahatczwfhucthpridzkv
sub esp, 4
mov dword [esp], eax
call fcn.0041b320
mov eax, dword [esi + 0x38]
mov byte [eax], 0
mov eax, dword [esi + 0x3c]
mov dword [eax], 0x17b9
mov eax, dword [esi + 0x40]
mov dword [eax], 0x46
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
mov edx, ecx
sub edx, 0x1dceac6f
sub edx, 1
add edx, 0x1dceac6f
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, 0x48dee181
mov ecx, 0x48093742
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0xa8ad28bf
jmp 0x409dd7
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0x60], eax
mov dword [esi + 0xc], 0x9b027b9e
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
mov edx, ecx
add edx, 0xdbb07200
sub edx, 1
sub edx, 0xdbb07200
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, 0xd4e9b064
mov ecx, 0x15569224
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov eax, dword [esi + 0x60]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x67], al
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0xd4e9b064
mov ecx, 0x36c1ffc3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0xe4ad7c22
jmp 0x409dd7
mov dl, byte [esi + 0x67]
mov eax, 0x10d1b835
mov ecx, 0x4e445440
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0x64781e7d
jmp 0x409dd7
mov eax, dword [esi + 0x68]
add eax, 0x99859515
add eax, 0xffffffff
sub eax, 0x99859515
mov dword [esi + 0x6c], eax
mov dword [esi + 0xc], 0x7fcf0770
jmp 0x409dd7
mov ecx, dword [esi + 0x44]
lea eax, str.yusszzrhccqgfxrvxhjhivyssisfbmxoqrldodlyiafzqydti
sub esp, 4
mov dword [esp], eax
call fcn.0041b320
mov ecx, dword [esi + 0x48]
lea eax, str.yusszzrhccqgfxrvxhjhivyssisfbmxoqrldodlyiafzqydti
sub esp, 4
mov dword [esp], eax
call fcn.0041b320
mov dword [esi + 0xc], 0x628bf0fc
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0xa46d1da3
mov ecx, 0x467c3888
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x48]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0041b8f0
add esp, 8
and al, 1
mov byte [esi + 0x70], al
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0xa46d1da3
mov ecx, 0xc02d5f0f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0x1b30b0ab
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0x42dd2146
mov ecx, 0x35ed19e3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov ecx, dword [esi + 0x48]
call fcn.0041b540
mov ecx, dword [esi + 0x44]
call fcn.0041b540
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
mov edx, ecx
add edx, 0x8198f517
sub edx, 1
sub edx, 0x8198f517
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, 0x42dd2146
mov ecx, 0xb2348046
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dl, byte [esi + 0x70]
mov eax, 0x6484e08e
mov ecx, 0xd95895c8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov eax, dword [0x43e58c]
mov ecx, dword [0x43e588]
mov edx, eax
add edx, 0xb369f2e4
sub edx, 1
sub edx, 0xb369f2e4
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, 0xc1bd7745
mov ecx, 0x1333347c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov eax, dword [esi + 0x4c]
mov dword [eax], 0x47
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0xc1bd7745
mov ecx, 0xd36fbe98
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0x63da7eda
jmp 0x409dd7
mov eax, dword [0x43e58c]
mov ecx, dword [0x43e588]
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, 0x2c80ef58
mov ecx, 0x495245be
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov eax, dword [esi + 0x4c]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x71], al
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0x2c80ef58
mov ecx, 0x5e5c1823
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0x98f04aa9
jmp 0x409dd7
mov eax, dword [0x43e58c]
mov ecx, dword [0x43e588]
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, 0xec049baa
mov ecx, 0x1cf93ef3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
mov edx, ecx
add edx, 0x43fed2f9
sub edx, 1
sub edx, 0x43fed2f9
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, 0xec049baa
mov ecx, 0x9faa8f2e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dl, byte [esi + 0x71]
mov eax, 0x3930310d
mov ecx, 0xc1cd5dcd
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0xb09ba4a2
mov ecx, 0x62ef17b3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
mov edx, ecx
add edx, 0x11734b74
sub edx, 1
sub edx, 0x11734b74
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, 0xb09ba4a2
mov ecx, 0x3a200df3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0xf6b9f847
jmp 0x409dd7
mov eax, dword [esi + 0x4c]
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 + 0x4c]
mov dword [eax], ecx
mov dword [esi + 0xc], 0x4627e9c8
jmp 0x409dd7
mov dword [esi + 0xc], 0xf0c9f1a6
jmp 0x409dd7
mov dword [esi + 0xc], 0x6484e08e
jmp 0x409dd7
mov dl, byte [esi + 0x72]
mov eax, 0xcb1f1c8
mov ecx, 0x87b4ea24
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov eax, dword [esi + 0x58]
mov dword [eax], 0x4f
mov dword [esi + 0xc], 0x9b57829f
jmp 0x409dd7
mov dword [esi + 0xc], 0x8651ef67
jmp 0x409dd7
mov eax, dword [esi + 0x58]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x73], al
mov dword [esi + 0xc], 0x3727ae8e
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0xef9817b0
mov ecx, 0x42108ef4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0xef9817b0
mov ecx, 0x93d6c11c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dl, byte [esi + 0x73]
mov eax, 0xf0436642
mov ecx, 0xba52c95b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0x7fe9feb5
jmp 0x409dd7
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov dword [esi + 0x74], eax
mov eax, dword [0x43e58c]
mov ecx, dword [0x43e588]
mov edx, eax
add edx, 0x1639cdeb
sub edx, 1
sub edx, 0x1639cdeb
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, 0x665c9232
mov ecx, 0xe8a9ab6f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0xab27855f
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
mov edx, ecx
sub edx, 0x4686ce7f
sub edx, 1
add edx, 0x4686ce7f
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, 0xdb448ef2
mov ecx, 0xdfe5e1ae
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov ecx, dword [esi + 0x74]
add ecx, 0x7567bd2a
add ecx, 0xffffffff
sub ecx, 0x7567bd2a
mov eax, dword [esi + 0x58]
mov dword [eax], ecx
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
mov edx, ecx
sub edx, 0xd66997d9
sub edx, 1
add edx, 0xd66997d9
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, 0xdb448ef2
mov ecx, 0x1e1ee7da
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0x8651ef67
jmp 0x409dd7
mov dword [esi + 0xc], 0xcb1f1c8
jmp 0x409dd7
mov ecx, dword [0x43e58c]
mov eax, dword [0x43e588]
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, 0x908fa8be
mov ecx, 0xb7c7edcf
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov ecx, dword [esi + 0x34]
call fcn.0041b540
mov ecx, dword [esi + 0x28]
call fcn.0041b540
mov ecx, dword [esi + 0x5c]
call fcn.0041b540
mov eax, dword [0x43e58c]
mov ecx, dword [0x43e588]
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, 0x908fa8be
mov ecx, 0x4759e209
test dl, 1
cmovne eax, ecx
mov dword [esi + 0xc], eax
jmp 0x409dd7
mov dword [esi + 0xc], 0x7ea18f55
jmp 0x409dd7
mov dword [esi + 0xc], 0xab531695
jmp 0x409dd7
mov ecx, dword [esi + 4]
mov eax, dword [esi + 0x14]
mov dword [eax], ecx
mov eax, dword [esi + 0x14]
mov eax, dword [esi + 0x18]
mov byte [eax], 0
mov eax, dword [esi + 0x1c]
mov byte [eax], 0
mov eax, dword [esi + 0x20]
vmovsd xmm0, qword [0x4351f8]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x24]
vmovsd xmm0, qword [0x4351f0]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x28]
lea eax, str.yusszzrhccqgfxrvxhjhivyssisfbmxoqrldodlyiafzqydti
sub esp, 4
mov dword [esp], eax
call fcn.0041b320
mov eax, dword [esi + 0x2c]
vmovsd xmm0, qword [0x4351e8]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x30]
mov byte [eax], 0
mov ecx, dword [esi + 0x34]
lea eax, str.qqrscoyclggmruijgovdpccjoizbsetwexcaeelhaqxjlkjbsymnwilefylcsaphdcrmgsnabxlgmswahatczwfhucthpridzkv
sub esp, 4
mov dword [esp], eax
call fcn.0041b320
mov eax, dword [esi + 0x38]
mov byte [eax], 0
mov eax, dword [esi + 0x3c]
mov dword [eax], 0x17b9
mov eax, dword [esi + 0x40]
mov dword [eax], 0x46
mov dword [esi + 0xc], 0x4902b122
jmp 0x409dd7
mov eax, dword [esi + 0x60]
mov dword [esi + 0xc], 0x15569224
jmp 0x409dd7
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x48]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0041b8f0
add esp, 8
mov dword [esi + 0xc], 0x467c3888
jmp 0x409dd7
mov ecx, dword [esi + 0x48]
call fcn.0041b540
mov ecx, dword [esi + 0x44]
call fcn.0041b540
mov dword [esi + 0xc], 0x35ed19e3
jmp 0x409dd7
mov eax, dword [esi + 0x4c]
mov dword [eax], 0x47
mov dword [esi + 0xc], 0x1333347c
jmp 0x409dd7
mov eax, dword [esi + 0x4c]
mov dword [esi + 0xc], 0x495245be
jmp 0x409dd7
mov dword [esi + 0xc], 0x1cf93ef3
jmp 0x409dd7
mov dword [esi + 0xc], 0x62ef17b3
jmp 0x409dd7
mov dword [esi + 0xc], 0x42108ef4
jmp 0x409dd7
mov eax, dword [esi + 0x74]
mov ecx, dword [esi + 0x74]
add ecx, 0x4a8d55a9
add ecx, 0xffffffff
sub ecx, 0x4a8d55a9
mov eax, dword [esi + 0x58]
mov dword [eax], ecx
mov dword [esi + 0xc], 0xdfe5e1ae
jmp 0x409dd7
mov ecx, dword [esi + 0x34]
call fcn.0041b540
mov ecx, dword [esi + 0x28]
call fcn.0041b540
mov ecx, dword [esi + 0x5c]
call fcn.0041b540
mov dword [esi + 0xc], 0xb7c7edcf
jmp 0x408874