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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x98
mov esi, esp
mov dword [esi + 0x10], ecx
lea eax, [ebp + 8]
mov dword [esi + 0x14], eax
mov eax, dword [0x47c080]
xor eax, ebp
mov dword [esi + 0x90], eax
mov dword [esi + 0x1c], 0x640831da
mov eax, dword [esi + 0x1c]
mov dword [esi + 0xc], eax
sub eax, 0x85e4368b
je 0x40c130
jmp 0x40b1f4
mov eax, dword [esi + 0xc]
sub eax, 0x8b29f5bd
je 0x40c36e
jmp 0x40b207
mov eax, dword [esi + 0xc]
sub eax, 0x9311a638
je 0x40c3f8
jmp 0x40b21a
mov eax, dword [esi + 0xc]
sub eax, 0x9d2fecb4
je 0x40c0b5
jmp 0x40b22d
mov eax, dword [esi + 0xc]
sub eax, 0xa090ce60
je 0x40bb45
jmp 0x40b240
mov eax, dword [esi + 0xc]
sub eax, 0xa20e5e4b
je 0x40bf7d
jmp 0x40b253
mov eax, dword [esi + 0xc]
sub eax, 0xa408feac
je 0x40b887
jmp 0x40b266
mov eax, dword [esi + 0xc]
sub eax, 0xa6c73716
je 0x40c3b5
jmp 0x40b279
mov eax, dword [esi + 0xc]
sub eax, 0xa8a20d0e
je 0x40b96c
jmp 0x40b28c
mov eax, dword [esi + 0xc]
sub eax, 0xaa9f50a4
je 0x40c31d
jmp 0x40b29f
mov eax, dword [esi + 0xc]
sub eax, 0xb22d9978
je 0x40bb93
jmp 0x40b2b2
mov eax, dword [esi + 0xc]
sub eax, 0xc08079e0
je 0x40c3a0
jmp 0x40b2c5
mov eax, dword [esi + 0xc]
sub eax, 0xc2f35cfe
je 0x40bccb
jmp 0x40b2d8
mov eax, dword [esi + 0xc]
sub eax, 0xc3353a02
je 0x40c036
jmp 0x40b2eb
mov eax, dword [esi + 0xc]
sub eax, 0xcb229625
je 0x40be89
jmp 0x40b2fe
mov eax, dword [esi + 0xc]
sub eax, 0xcdc0626b
je 0x40c344
jmp 0x40b311
mov eax, dword [esi + 0xc]
sub eax, 0xd0f9eb6a
je 0x40bf42
jmp 0x40b324
mov eax, dword [esi + 0xc]
sub eax, 0xd4243628
je 0x40bbfe
jmp 0x40b337
mov eax, dword [esi + 0xc]
sub eax, 0xd4babff6
je 0x40b91e
jmp 0x40b34a
mov eax, dword [esi + 0xc]
sub eax, 0xd661858d
je 0x40c272
jmp 0x40b35d
mov eax, dword [esi + 0xc]
sub eax, 0xd83e9094
je 0x40ba34
jmp 0x40b370
mov eax, dword [esi + 0xc]
sub eax, 0xd9bb877b
je 0x40bfe8
jmp 0x40b383
mov eax, dword [esi + 0xc]
sub eax, 0xe5d273f7
je 0x40befc
jmp 0x40b396
mov eax, dword [esi + 0xc]
sub eax, 0xe7dcd56d
je 0x40bf4e
jmp 0x40b3a9
mov eax, dword [esi + 0xc]
sub eax, 0xe8a0f682
je 0x40b839
jmp 0x40b3bc
mov eax, dword [esi + 0xc]
sub eax, 0xe9ecc289
je 0x40bcd7
jmp 0x40b3cf
mov eax, dword [esi + 0xc]
sub eax, 0xfb3ba31a
je 0x40be01
jmp 0x40b3e2
mov eax, dword [esi + 0xc]
sub eax, 0xfc300533
je 0x40c1ca
jmp 0x40b3f5
mov eax, dword [esi + 0xc]
sub eax, 0x34174cd
je 0x40c15f
jmp 0x40b408
mov eax, dword [esi + 0xc]
sub eax, 0x380ee1c
je 0x40ba55
jmp 0x40b41b
mov eax, dword [esi + 0xc]
sub eax, 0x39e0078
je 0x40c3cd
jmp 0x40b42e
mov eax, dword [esi + 0xc]
sub eax, 0xe12ce23
je 0x40c329
jmp 0x40b441
mov eax, dword [esi + 0xc]
sub eax, 0x1042853d
je 0x40c220
jmp 0x40b454
mov eax, dword [esi + 0xc]
sub eax, 0x10520d61
je 0x40c2fd
jmp 0x40b467
mov eax, dword [esi + 0xc]
sub eax, 0x14ead954
je 0x40ba49
jmp 0x40b47a
mov eax, dword [esi + 0xc]
sub eax, 0x18805caa
je 0x40c042
jmp 0x40b48d
mov eax, dword [esi + 0xc]
sub eax, 0x18e45523
je 0x40bda7
jmp 0x40b4a0
mov eax, dword [esi + 0xc]
sub eax, 0x1d939da0
je 0x40c3dc
jmp 0x40b4b3
mov eax, dword [esi + 0xc]
sub eax, 0x205c5c50
je 0x40c35f
jmp 0x40b4c6
mov eax, dword [esi + 0xc]
sub eax, 0x2e194458
je 0x40c3c1
jmp 0x40b4d9
mov eax, dword [esi + 0xc]
sub eax, 0x32e2e71d
je 0x40b903
jmp 0x40b4ec
mov eax, dword [esi + 0xc]
sub eax, 0x331941e9
je 0x40b9eb
jmp 0x40b4ff
mov eax, dword [esi + 0xc]
sub eax, 0x3329c06a
je 0x40bdb3
jmp 0x40b512
mov eax, dword [esi + 0xc]
sub eax, 0x34e60d2e
je 0x40bc7d
jmp 0x40b525
mov eax, dword [esi + 0xc]
sub eax, 0x34ea6d99
je 0x40b6ec
jmp 0x40b538
mov eax, dword [esi + 0xc]
sub eax, 0x3a23a78c
je 0x40bac8
jmp 0x40b54b
mov eax, dword [esi + 0xc]
sub eax, 0x3d2e0064
je 0x40bb1e
jmp 0x40b55e
mov eax, dword [esi + 0xc]
sub eax, 0x3efef8d2
je 0x40be7d
jmp 0x40b571
mov eax, dword [esi + 0xc]
sub eax, 0x40870121
je 0x40c13c
jmp 0x40b584
mov eax, dword [esi + 0xc]
sub eax, 0x42dc1e62
je 0x40bc0a
jmp 0x40b597
mov eax, dword [esi + 0xc]
sub eax, 0x45cf3788
je 0x40c338
jmp 0x40b5aa
mov eax, dword [esi + 0xc]
sub eax, 0x4af60e9d
je 0x40bd25
jmp 0x40b5bd
mov eax, dword [esi + 0xc]
sub eax, 0x5092d464
je 0x40c22c
jmp 0x40b5d0
mov eax, dword [esi + 0xc]
sub eax, 0x52dee703
je 0x40b8e9
jmp 0x40b5e3
mov eax, dword [esi + 0xc]
sub eax, 0x566cd28f
je 0x40b8dd
jmp 0x40b5f6
mov eax, dword [esi + 0xc]
sub eax, 0x5a0b44f3
je 0x40b9df
jmp 0x40b609
mov eax, dword [esi + 0xc]
sub eax, 0x63db2490
je 0x40bb2a
jmp 0x40b61c
mov eax, dword [esi + 0xc]
sub eax, 0x640831da
je 0x40b6a6
jmp 0x40b62f
mov eax, dword [esi + 0xc]
sub eax, 0x673d3a6d
je 0x40c353
jmp 0x40b642
mov eax, dword [esi + 0xc]
sub eax, 0x684ac9f0
je 0x40bf62
jmp 0x40b655
mov eax, dword [esi + 0xc]
sub eax, 0x6bc24c80
je 0x40b772
jmp 0x40b668
mov eax, dword [esi + 0xc]
sub eax, 0x746a3e81
je 0x40b9ff
jmp 0x40b67b
mov eax, dword [esi + 0xc]
sub eax, 0x773d7e22
je 0x40b77e
jmp 0x40b68e
mov eax, dword [esi + 0xc]
sub eax, 0x7ff29ccd
je 0x40ba20
jmp 0x40b6a1
jmp 0x40c417
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
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, 0xaa9f50a4
mov ecx, 0x34ea6d99
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
push eax
mov eax, esp
mov dword [esi + 0x34], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov dword [esi + 0x38], eax
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
mov edx, ecx
add edx, 0x1ce23d97
sub edx, 1
sub edx, 0x1ce23d97
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, 0xaa9f50a4
mov ecx, 0x6bc24c80
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0x773d7e22
jmp 0x40c417
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x14]
push eax
sub esp, 0x14
mov edx, esp
mov dword [esi + 0x3c], edx
push eax
mov edx, esp
mov dword [esi + 4], edx
push eax
mov edx, esp
mov dword [esi + 8], edx
push eax
mov edx, esp
mov dword [esi + 0x40], edx
push eax
mov edx, esp
mov dword [esi + 0x44], edx
push eax
mov edx, esp
mov dword [esi + 0x48], edx
mov edx, ecx
add edx, 4
mov dword [esi + 0x4c], edx
mov edx, ecx
add edx, 0x30
mov dword [esi + 0x50], edx
add ecx, 0x48
mov dword [esi + 0x54], ecx
mov dword [esi + 0x30], eax
mov byte [esi + 0x2f], 1
lea ecx, [esi + 0x78]
lea eax, str.zcaguajivdoxohqtggefuhksloi
sub esp, 4
mov dword [esp], eax
call fcn.004149a0
vmovsd xmm0, qword [0x42e260]
vmovsd qword [esi + 0x20], xmm0
mov eax, dword [esi + 0x34]
mov dword [eax], 0x45a
mov eax, dword [esi + 0x38]
vmovsd xmm0, qword [0x42e258]
vmovsd qword [eax], xmm0
mov ecx, dword [esi + 0x3c]
lea eax, str.qnvaciukvogofutnblgegpwmaewswwdmpdfddcjtkdzolxebwefczrhexqgmwhiveexsqiemynqdsoptyzrjljaltfrlwcyyhwb
sub esp, 4
mov dword [esp], eax
call fcn.004149a0
mov ecx, dword [esi + 4]
mov eax, dword [esi + 8]
mov byte [ecx], 1
mov dword [eax], 0x383
mov eax, dword [esi + 0x40]
mov dword [eax], 0x54
mov dword [esi + 0x1c], 0xe8a0f682
jmp 0x40c417
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
mov edx, eax
add edx, 0xbd2b542f
sub edx, 1
sub edx, 0xbd2b542f
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, 0xe12ce23
mov ecx, 0xa408feac
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0x58], eax
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
mov edx, eax
sub edx, 0x2dc83965
sub edx, 1
add edx, 0x2dc83965
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, 0xe12ce23
mov ecx, 0x566cd28f
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0x52dee703
jmp 0x40c417
mov eax, dword [esi + 0x58]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x5f], al
mov dword [esi + 0x1c], 0x32e2e71d
jmp 0x40c417
mov dl, byte [esi + 0x5f]
mov eax, 0xd83e9094
mov ecx, 0xd4babff6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
mov edx, eax
sub edx, 0xb7f0f140
sub edx, 1
add edx, 0xb7f0f140
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, 0x45cf3788
mov ecx, 0xa8a20d0e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
mov edx, ecx
add edx, 0x6f99a446
sub edx, 1
sub edx, 0x6f99a446
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, 0x45cf3788
mov ecx, 0x5a0b44f3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0x331941e9
jmp 0x40c417
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0x60], eax
mov dword [esi + 0x1c], 0x746a3e81
jmp 0x40c417
mov eax, dword [esi + 0x60]
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 0xffffffff
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [esi + 0x64], eax
mov dword [esi + 0x1c], 0x7ff29ccd
jmp 0x40c417
mov eax, dword [esi + 0x40]
mov ecx, dword [esi + 0x64]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0xe8a0f682
jmp 0x40c417
mov eax, dword [esi + 0x44]
mov dword [eax], 0x13
mov dword [esi + 0x1c], 0x14ead954
jmp 0x40c417
mov dword [esi + 0x1c], 0x380ee1c
jmp 0x40c417
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
mov edx, ecx
sub edx, 0xe40f1d72
sub edx, 1
add edx, 0xe40f1d72
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, 0xcdc0626b
mov ecx, 0x3a23a78c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov dword [esi + 0x68], eax
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
mov edx, eax
sub edx, 0xbe173a9e
sub edx, 1
add edx, 0xbe173a9e
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, 0xcdc0626b
mov ecx, 0x3d2e0064
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0x63db2490
jmp 0x40c417
mov edx, dword [esi + 0x68]
mov eax, 0x3329c06a
mov ecx, 0xa090ce60
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
mov edx, eax
sub edx, 0xaf55f4ce
sub edx, 1
add edx, 0xaf55f4ce
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, 0x673d3a6d
mov ecx, 0xb22d9978
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
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, 0x673d3a6d
mov ecx, 0xd4243628
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0x42dc1e62
jmp 0x40c417
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
mov edx, ecx
add edx, 0xf0d880f4
sub edx, 1
sub edx, 0xf0d880f4
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, 0x205c5c50
mov ecx, 0x34e60d2e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov dword [esi + 0x6c], eax
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
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, 0x205c5c50
mov ecx, 0xc2f35cfe
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0xe9ecc289
jmp 0x40c417
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
mov edx, eax
add edx, 0xd775fbc8
sub edx, 1
sub edx, 0xd775fbc8
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, 0x8b29f5bd
mov ecx, 0x4af60e9d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov ecx, dword [esi + 0x6c]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x44]
mov dword [eax], ecx
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
mov edx, ecx
sub edx, 0xa21781aa
sub edx, 1
add edx, 0xa21781aa
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, 0x8b29f5bd
mov ecx, 0x18e45523
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0x380ee1c
jmp 0x40c417
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
mov edx, eax
sub edx, 0xf5d62b0c
sub edx, 1
add edx, 0xf5d62b0c
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, 0xc08079e0
mov ecx, 0xfb3ba31a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov eax, dword [esi + 0x48]
mov dword [eax], 0x27
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
mov edx, ecx
add edx, 0x6b2c5255
sub edx, 1
sub edx, 0x6b2c5255
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, 0xc08079e0
mov ecx, 0x3efef8d2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0xcb229625
jmp 0x40c417
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
mov edx, ecx
add edx, 0xc7fdbb56
sub edx, 1
sub edx, 0xc7fdbb56
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, 0xa6c73716
mov ecx, 0xe5d273f7
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
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, 0xa6c73716
mov ecx, 0xd0f9eb6a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0xe7dcd56d
jmp 0x40c417
mov eax, dword [esi + 0x48]
mov eax, dword [eax]
mov dword [esi + 0x70], eax
mov dword [esi + 0x1c], 0x684ac9f0
jmp 0x40c417
mov edx, dword [esi + 0x70]
mov eax, 0x34174cd
mov ecx, 0xa20e5e4b
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
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, 0x2e194458
mov ecx, 0xd9bb877b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
mov edx, eax
add edx, 0x1627775f
sub edx, 1
sub edx, 0x1627775f
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, 0x2e194458
mov ecx, 0xc3353a02
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0x18805caa
jmp 0x40c417
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
mov edx, ecx
add edx, 0x595e607e
sub edx, 1
sub edx, 0x595e607e
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, 0x39e0078
mov ecx, 0x9d2fecb4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov eax, dword [esi + 0x48]
mov eax, dword [eax]
mov dword [esi + 0x74], eax
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
mov edx, ecx
add edx, 0xc183a352
sub edx, 1
sub edx, 0xc183a352
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, 0x39e0078
mov ecx, 0x85e4368b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0x40870121
jmp 0x40c417
mov ecx, dword [esi + 0x74]
add ecx, 0xa0dd9359
add ecx, 0xffffffff
sub ecx, 0xa0dd9359
mov eax, dword [esi + 0x48]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0xe7dcd56d
jmp 0x40c417
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
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, 0x1d939da0
mov ecx, 0xfc300533
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov ecx, dword [esi + 0x3c]
call fcn.00414cf0
lea ecx, [esi + 0x78]
call fcn.00414cf0
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
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, 0x1d939da0
mov ecx, 0x1042853d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov dword [esi + 0x1c], 0x5092d464
jmp 0x40c417
mov eax, dword [0x47d56c]
mov ecx, dword [0x47d568]
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, 0x9311a638
mov ecx, 0xd661858d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov ecx, dword [esi + 0x4c]
call fcn.00414cf0
mov ecx, dword [esi + 0x50]
call fcn.00414cf0
mov ecx, dword [esi + 0x54]
call fcn.00414cf0
mov ecx, dword [0x47d56c]
mov eax, dword [0x47d568]
mov edx, ecx
add edx, 0x6e33a924
sub edx, 1
sub edx, 0x6e33a924
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, 0x9311a638
mov ecx, 0x10520d61
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x1c], eax
jmp 0x40c417
mov eax, 0xd2ca
mov dword [esi], eax
mov ecx, dword [esi + 0x90]
xor ecx, ebp
call fcn.0041f310
mov eax, dword [esi]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x6c
mov dword [esi + 0x1c], 0x34ea6d99
jmp 0x40c417
mov eax, dword [esi + 0x40]
mov dword [esi + 0x1c], 0xa408feac
jmp 0x40c417
mov dword [esi + 0x1c], 0xa8a20d0e
jmp 0x40c417
mov eax, dword [esi + 0x44]
mov dword [esi + 0x1c], 0x3a23a78c
jmp 0x40c417
mov dword [esi + 0x1c], 0xb22d9978
jmp 0x40c417
mov eax, dword [esi + 0x44]
mov dword [esi + 0x1c], 0x34e60d2e
jmp 0x40c417
mov eax, dword [esi + 0x6c]
mov eax, dword [esi + 0x6c]
mov eax, dword [esi + 0x6c]
mov eax, dword [esi + 0x6c]
mov eax, dword [esi + 0x6c]
mov ecx, dword [esi + 0x6c]
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 + 0x44]
mov dword [eax], ecx
mov dword [esi + 0x1c], 0x4af60e9d
jmp 0x40c417
mov eax, dword [esi + 0x48]
mov dword [eax], 0x27
mov dword [esi + 0x1c], 0xfb3ba31a
jmp 0x40c417
mov dword [esi + 0x1c], 0xe5d273f7
jmp 0x40c417
mov dword [esi + 0x1c], 0xd9bb877b
jmp 0x40c417
mov eax, dword [esi + 0x48]
mov dword [esi + 0x1c], 0x9d2fecb4
jmp 0x40c417
mov ecx, dword [esi + 0x3c]
call fcn.00414cf0
lea ecx, [esi + 0x78]
call fcn.00414cf0
mov dword [esi + 0x1c], 0xfc300533
jmp 0x40c417
mov ecx, dword [esi + 0x4c]
call fcn.00414cf0
mov ecx, dword [esi + 0x50]
call fcn.00414cf0
mov ecx, dword [esi + 0x54]
call fcn.00414cf0
mov dword [esi + 0x1c], 0xd661858d
jmp 0x40b1de