Function at 0x4090c0
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 + 0x10], ecx
lea eax, [ebp + 8]
mov dword [esi + 0x14], eax
mov eax, dword [0x452080]
xor eax, ebp
mov dword [esi + 0x78], eax
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
xor edi, edi
sub edi, 1
mov edx, ecx
add edx, edi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x1e], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x1f], al
mov dword [esi + 0x18], 0xbcec49b6
mov eax, dword [esi + 0x18]
mov dword [esi + 0xc], eax
sub eax, 0x82c60d64
je 0x40a095
jmp 0x409132
mov eax, dword [esi + 0xc]
sub eax, 0x8628d240
je 0x409986
jmp 0x409145
mov eax, dword [esi + 0xc]
sub eax, 0x8dedefc9
je 0x40a06c
jmp 0x409158
mov eax, dword [esi + 0xc]
sub eax, 0x8e17cd2c
je 0x409a9f
jmp 0x40916b
mov eax, dword [esi + 0xc]
sub eax, 0x924f6b36
je 0x40980a
jmp 0x40917e
mov eax, dword [esi + 0xc]
sub eax, 0x98710fa0
je 0x409858
jmp 0x409191
mov eax, dword [esi + 0xc]
sub eax, 0x9a203caf
je 0x40a01c
jmp 0x4091a4
mov eax, dword [esi + 0xc]
sub eax, 0x9b040bfa
je 0x40a1d9
jmp 0x4091b7
mov eax, dword [esi + 0xc]
sub eax, 0x9f7200db
je 0x409a73
jmp 0x4091ca
mov eax, dword [esi + 0xc]
sub eax, 0xa603aefc
je 0x40a051
jmp 0x4091dd
mov eax, dword [esi + 0xc]
sub eax, 0xb23dd87e
je 0x409e08
jmp 0x4091f0
mov eax, dword [esi + 0xc]
sub eax, 0xb82287c8
je 0x409fdb
jmp 0x409203
mov eax, dword [esi + 0xc]
sub eax, 0xbcec49b6
je 0x40961d
jmp 0x409216
mov eax, dword [esi + 0xc]
sub eax, 0xc7b89356
je 0x409b12
jmp 0x409229
mov eax, dword [esi + 0xc]
sub eax, 0xc7bc3784
je 0x4097a6
jmp 0x40923c
mov eax, dword [esi + 0xc]
sub eax, 0xc9fa0025
je 0x409e87
jmp 0x40924f
mov eax, dword [esi + 0xc]
sub eax, 0xcc97a2df
je 0x40a008
jmp 0x409262
mov eax, dword [esi + 0xc]
sub eax, 0xcca58c74
je 0x40a1cd
jmp 0x409275
mov eax, dword [esi + 0xc]
sub eax, 0xd030aca0
je 0x4098b2
jmp 0x409288
mov eax, dword [esi + 0xc]
sub eax, 0xd17c6f0e
je 0x4097c1
jmp 0x40929b
mov eax, dword [esi + 0xc]
sub eax, 0xd319d1ac
je 0x40a031
jmp 0x4092ae
mov eax, dword [esi + 0xc]
sub eax, 0xd4d8ea1b
je 0x409c28
jmp 0x4092c1
mov eax, dword [esi + 0xc]
sub eax, 0xda1a1b06
je 0x40a23c
jmp 0x4092d4
mov eax, dword [esi + 0xc]
sub eax, 0xe14e636c
je 0x409d95
jmp 0x4092e7
mov eax, dword [esi + 0xc]
sub eax, 0xed6d6c22
je 0x40999a
jmp 0x4092fa
mov eax, dword [esi + 0xc]
sub eax, 0xf1e97692
je 0x409d6e
jmp 0x40930d
mov eax, dword [esi + 0xc]
sub eax, 0xf26789e8
je 0x40a03d
jmp 0x409320
mov eax, dword [esi + 0xc]
sub eax, 0xfb951f5c
je 0x409f4d
jmp 0x409333
mov eax, dword [esi + 0xc]
sub eax, 0xfe3f9a38
je 0x409ba8
jmp 0x409346
mov eax, dword [esi + 0xc]
sub eax, 0x409839d
je 0x409ec4
jmp 0x409359
mov eax, dword [esi + 0xc]
sub eax, 0x11d55d23
je 0x409c93
jmp 0x40936c
mov eax, dword [esi + 0xc]
sub eax, 0x16b48125
je 0x4098a6
jmp 0x40937f
mov eax, dword [esi + 0xc]
sub eax, 0x192c972e
je 0x409eff
jmp 0x409392
mov eax, dword [esi + 0xc]
sub eax, 0x197796f0
je 0x40a114
jmp 0x4093a5
mov eax, dword [esi + 0xc]
sub eax, 0x197d6f18
je 0x409a7f
jmp 0x4093b8
mov eax, dword [esi + 0xc]
sub eax, 0x19e6c85b
je 0x40997a
jmp 0x4093cb
mov eax, dword [esi + 0xc]
sub eax, 0x1b881f1c
je 0x40a19b
jmp 0x4093de
mov eax, dword [esi + 0xc]
sub eax, 0x1e30bd08
je 0x40a26f
jmp 0x4093f1
mov eax, dword [esi + 0xc]
sub eax, 0x25f77fe7
je 0x409ed9
jmp 0x409404
mov eax, dword [esi + 0xc]
sub eax, 0x26572b22
je 0x40a18f
jmp 0x409417
mov eax, dword [esi + 0xc]
sub eax, 0x2adecabb
je 0x409730
jmp 0x40942a
mov eax, dword [esi + 0xc]
sub eax, 0x2b7e7646
je 0x409bbd
jmp 0x40943d
mov eax, dword [esi + 0xc]
sub eax, 0x31257ad5
je 0x40a0a1
jmp 0x409450
mov eax, dword [esi + 0xc]
sub eax, 0x32da489e
je 0x409a19
jmp 0x409463
mov eax, dword [esi + 0xc]
sub eax, 0x371898b6
je 0x409d7a
jmp 0x409476
mov eax, dword [esi + 0xc]
sub eax, 0x3758cf92
je 0x4097ef
jmp 0x409489
mov eax, dword [esi + 0xc]
sub eax, 0x4455357a
je 0x409ee5
jmp 0x40949c
mov eax, dword [esi + 0xc]
sub eax, 0x46c2df75
je 0x409c9f
jmp 0x4094af
mov eax, dword [esi + 0xc]
sub eax, 0x4acf7fb9
je 0x4097d5
jmp 0x4094c2
mov eax, dword [esi + 0xc]
sub eax, 0x4b0e07e6
je 0x409b8d
jmp 0x4094d5
mov eax, dword [esi + 0xc]
sub eax, 0x4e887cbe
je 0x4098f8
jmp 0x4094e8
mov eax, dword [esi + 0xc]
sub eax, 0x5089ac31
je 0x409e7b
jmp 0x4094fb
mov eax, dword [esi + 0xc]
sub eax, 0x54dd13fe
je 0x409668
jmp 0x40950e
mov eax, dword [esi + 0xc]
sub eax, 0x586cc756
je 0x40a078
jmp 0x409521
mov eax, dword [esi + 0xc]
sub eax, 0x5d6e19f7
je 0x409d12
jmp 0x409534
mov eax, dword [esi + 0xc]
sub eax, 0x5de1e24f
je 0x40a1e8
jmp 0x409547
mov eax, dword [esi + 0xc]
sub eax, 0x6023230a
je 0x409eac
jmp 0x40955a
mov eax, dword [esi + 0xc]
sub eax, 0x607c2827
je 0x409eb8
jmp 0x40956d
mov eax, dword [esi + 0xc]
sub eax, 0x63c3cdd5
je 0x4099a6
jmp 0x409580
mov eax, dword [esi + 0xc]
sub eax, 0x685b62c1
je 0x40a257
jmp 0x409593
mov eax, dword [esi + 0xc]
sub eax, 0x68b8191a
je 0x40a208
jmp 0x4095a6
mov eax, dword [esi + 0xc]
sub eax, 0x73af4ae8
je 0x40973c
jmp 0x4095b9
mov eax, dword [esi + 0xc]
sub eax, 0x795243ca
je 0x40a248
jmp 0x4095cc
mov eax, dword [esi + 0xc]
sub eax, 0x79887bb4
je 0x409fe7
jmp 0x4095df
mov eax, dword [esi + 0xc]
sub eax, 0x79e9b185
je 0x40a263
mov bl, byte [esi + 0x1e]
mov dh, byte [esi + 0x1f]
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, 0x7a63d33a
mov ecx, 0x54dd13fe
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov eax, dword [esi + 0x14]
push eax
mov ecx, esp
mov dword [esi + 0x20], ecx
sub esp, 8
mov ecx, esp
and ecx, 0xfffffff8
mov esp, ecx
mov dword [esi + 0x24], ecx
push eax
push eax
mov ecx, esp
and ecx, 0xfffffff8
mov esp, ecx
mov dword [esi + 0x28], ecx
push eax
mov ecx, esp
mov dword [esi + 0x2c], ecx
push eax
mov ecx, esp
mov dword [esi + 0x30], ecx
sub esp, 0x18
mov ecx, esp
mov dword [esi + 0x34], ecx
sub esp, 8
mov ecx, esp
and ecx, 0xfffffff8
mov esp, ecx
mov dword [esi + 0x38], ecx
push eax
mov ecx, esp
mov dword [esi + 0x3c], ecx
push eax
mov ecx, esp
mov dword [esi + 0x40], ecx
sub esp, 0x18
mov ecx, esp
mov dword [esi + 0x44], ecx
sub esp, 0x18
mov ecx, esp
mov dword [esi + 0x48], ecx
push eax
mov ecx, esp
mov dword [esi + 0x4c], ecx
push eax
mov ecx, esp
mov dword [esi + 0x50], ecx
push eax
mov ecx, esp
mov dword [esi + 0x54], ecx
mov dword [esi + 0x58], eax
add eax, 0x20
mov dword [esi + 0x5c], eax
mov eax, dword [0x4535ec]
mov ecx, dword [0x4535e8]
mov edx, eax
add edx, 0x8728165e
sub edx, 1
sub edx, 0x8728165e
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, 0x7a63d33a
mov ecx, 0x2adecabb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dword [esi + 0x18], 0x73af4ae8
jmp 0x40a286
mov ecx, dword [esi + 0x10]
mov eax, dword [esi + 0x20]
mov dword [eax], ecx
mov eax, dword [esi + 0x20]
mov eax, dword [esi + 0x24]
vmovsd xmm0, qword [0x42f218]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x28]
vmovsd xmm0, qword [0x42f210]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x2c]
mov dword [eax], 0x7e1
mov eax, dword [esi + 0x30]
mov dword [eax], 0x128b
mov ecx, dword [esi + 0x34]
lea eax, str.owuymxdkexq
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
mov eax, dword [esi + 0x38]
vmovsd xmm0, qword [0x42f208]
vmovsd qword [eax], xmm0
mov dword [esi + 0x18], 0xc7bc3784
jmp 0x40a286
mov eax, dword [esi + 0x3c]
mov byte [eax], 0
mov eax, dword [esi + 0x40]
mov dword [eax], 0x19
mov dword [esi + 0x18], 0xd17c6f0e
jmp 0x40a286
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
mov dword [esi + 0x60], eax
mov dword [esi + 0x18], 0x4acf7fb9
jmp 0x40a286
mov eax, dword [esi + 0x60]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x67], al
mov dword [esi + 0x18], 0x3758cf92
jmp 0x40a286
mov dl, byte [esi + 0x67]
mov eax, 0x63c3cdd5
mov ecx, 0x924f6b36
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov eax, dword [0x4535ec]
mov ecx, dword [0x4535e8]
mov edx, eax
add edx, 0x13d7e050
sub edx, 1
sub edx, 0x13d7e050
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, 0xcca58c74
mov ecx, 0x98710fa0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov eax, dword [0x4535ec]
mov ecx, dword [0x4535e8]
mov edx, eax
add edx, 0x1dff9610
sub edx, 1
sub edx, 0x1dff9610
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, 0xcca58c74
mov ecx, 0x16b48125
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dword [esi + 0x18], 0xd030aca0
jmp 0x40a286
mov eax, dword [0x4535ec]
mov ecx, dword [0x4535e8]
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, 0x9b040bfa
mov ecx, 0x4e887cbe
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov eax, dword [esi + 0x40]
mov eax, dword [eax]
xor ecx, ecx
sub ecx, 0xffffffff
sub eax, ecx
mov dword [esi + 0x68], eax
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
mov edx, ecx
add edx, 0x9ba29df
sub edx, 1
sub edx, 0x9ba29df
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, 0x9b040bfa
mov ecx, 0x19e6c85b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dword [esi + 0x18], 0x8628d240
jmp 0x40a286
mov eax, dword [esi + 0x40]
mov ecx, dword [esi + 0x68]
mov dword [eax], ecx
mov dword [esi + 0x18], 0xed6d6c22
jmp 0x40a286
mov dword [esi + 0x18], 0xd17c6f0e
jmp 0x40a286
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
mov edx, ecx
add edx, 0x38608256
sub edx, 1
sub edx, 0x38608256
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, 0x5de1e24f
mov ecx, 0x32da489e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov ecx, dword [esi + 0x44]
lea eax, str.owuymxdkexq
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
mov eax, dword [0x4535ec]
mov ecx, dword [0x4535e8]
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, 0x5de1e24f
mov ecx, 0x9f7200db
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dword [esi + 0x18], 0x197d6f18
jmp 0x40a286
mov ecx, dword [esi + 0x48]
lea eax, str.owuymxdkexq
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
mov dword [esi + 0x18], 0x8e17cd2c
jmp 0x40a286
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
mov edx, ecx
add edx, 0x48ea0078
sub edx, 1
sub edx, 0x48ea0078
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, 0x68b8191a
mov ecx, 0xc7b89356
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x48]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414b80
add esp, 8
and al, 1
mov byte [esi + 0x6d], al
mov ecx, dword [esi + 0x48]
call fcn.00414c00
mov ecx, dword [esi + 0x44]
call fcn.00414c00
mov eax, dword [0x4535ec]
mov ecx, dword [0x4535e8]
mov edx, eax
add edx, 0x68257512
sub edx, 1
sub edx, 0x68257512
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, 0x68b8191a
mov ecx, 0x4b0e07e6
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dl, byte [esi + 0x6d]
mov eax, 0x409839d
mov ecx, 0xfe3f9a38
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov eax, dword [esi + 0x4c]
mov dword [eax], 0x3f
mov dword [esi + 0x18], 0x2b7e7646
jmp 0x40a286
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
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, 0xda1a1b06
mov ecx, 0xd4d8ea1b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
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, 0xda1a1b06
mov ecx, 0x11d55d23
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dword [esi + 0x18], 0x46c2df75
jmp 0x40a286
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
mov edx, ecx
sub edx, 0xe2b596b
sub edx, 1
add edx, 0xe2b596b
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, 0x795243ca
mov ecx, 0x5d6e19f7
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov eax, dword [esi + 0x4c]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x6e], al
mov eax, dword [0x4535ec]
mov ecx, dword [0x4535e8]
mov edx, eax
sub edx, 0x60d6a805
sub edx, 1
add edx, 0x60d6a805
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, 0x795243ca
mov ecx, 0xf1e97692
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dword [esi + 0x18], 0x371898b6
jmp 0x40a286
mov dl, byte [esi + 0x6e]
mov eax, 0x607c2827
mov ecx, 0xe14e636c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
mov edx, ecx
add edx, 0x2fe8a22c
sub edx, 1
sub edx, 0x2fe8a22c
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, 0x685b62c1
mov ecx, 0xb23dd87e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
mov edx, ecx
sub edx, 0x18c67eac
sub edx, 1
add edx, 0x18c67eac
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, 0x685b62c1
mov ecx, 0x5089ac31
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dword [esi + 0x18], 0xc9fa0025
jmp 0x40a286
mov eax, dword [esi + 0x4c]
mov ecx, dword [eax]
sub ecx, 0x32fe0309
add ecx, 0xffffffff
add ecx, 0x32fe0309
mov eax, dword [esi + 0x4c]
mov dword [eax], ecx
mov dword [esi + 0x18], 0x6023230a
jmp 0x40a286
mov dword [esi + 0x18], 0x46c2df75
jmp 0x40a286
mov dword [esi + 0x18], 0x409839d
jmp 0x40a286
mov eax, dword [esi + 0x50]
mov dword [eax], 0x53
mov dword [esi + 0x18], 0x25f77fe7
jmp 0x40a286
mov dword [esi + 0x18], 0x4455357a
jmp 0x40a286
mov eax, dword [esi + 0x50]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x6f], al
mov dword [esi + 0x18], 0x192c972e
jmp 0x40a286
mov eax, dword [0x4535ec]
mov ecx, dword [0x4535e8]
mov edx, eax
add edx, 0x2a96a3b2
sub edx, 1
sub edx, 0x2a96a3b2
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, 0x79e9b185
mov ecx, 0xfb951f5c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
mov edx, ecx
sub edx, 0x2f0cdade
sub edx, 1
add edx, 0x2f0cdade
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, 0x79e9b185
mov ecx, 0x7e5ea0ab
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dword [esi + 0x18], 0x79887bb4
jmp 0x40a286
mov eax, dword [esi + 0x50]
mov eax, dword [eax]
add eax, 0xfe822346
add eax, 0xffffffff
sub eax, 0xfe822346
mov dword [esi + 0x70], eax
mov dword [esi + 0x18], 0xcc97a2df
jmp 0x40a286
mov eax, dword [esi + 0x50]
mov ecx, dword [esi + 0x70]
mov dword [eax], ecx
mov dword [esi + 0x18], 0x4455357a
jmp 0x40a286
mov eax, dword [esi + 0x54]
mov dword [eax], 0x1d
mov dword [esi + 0x18], 0xd319d1ac
jmp 0x40a286
mov dword [esi + 0x18], 0xf26789e8
jmp 0x40a286
mov eax, dword [esi + 0x54]
mov eax, dword [eax]
mov dword [esi + 0x74], eax
mov dword [esi + 0x18], 0xa603aefc
jmp 0x40a286
mov edx, dword [esi + 0x74]
mov eax, 0x31257ad5
mov ecx, 0x8dedefc9
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dword [esi + 0x18], 0x586cc756
jmp 0x40a286
mov eax, dword [esi + 0x54]
mov ecx, dword [eax]
xor eax, eax
sub eax, 0xffffffff
sub ecx, eax
mov eax, dword [esi + 0x54]
mov dword [eax], ecx
mov dword [esi + 0x18], 0x82c60d64
jmp 0x40a286
mov dword [esi + 0x18], 0xf26789e8
jmp 0x40a286
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
mov edx, ecx
sub edx, 0x12339d6c
sub edx, 1
add edx, 0x12339d6c
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, 0x1e30bd08
mov ecx, 0x197796f0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov ecx, dword [esi + 0x34]
call fcn.00414c00
mov ecx, dword [esi + 0x58]
call fcn.00414c00
mov ecx, dword [0x4535ec]
mov eax, dword [0x4535e8]
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, 0x1e30bd08
mov ecx, 0x26572b22
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x18], eax
jmp 0x40a286
mov dword [esi + 0x18], 0x1b881f1c
jmp 0x40a286
mov ecx, dword [esi + 0x5c]
call fcn.00414c00
fld dword [0x42f200]
fstp xword [esi]
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.0041fcd0
fld xword [esi]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x54
mov dword [esi + 0x18], 0x98710fa0
jmp 0x40a286
mov eax, dword [esi + 0x40]
mov dword [esi + 0x18], 0x4e887cbe
jmp 0x40a286
mov ecx, dword [esi + 0x44]
lea eax, str.owuymxdkexq
sub esp, 4
mov dword [esp], eax
call fcn.004149b0
mov dword [esi + 0x18], 0x32da489e
jmp 0x40a286
mov eax, dword [esi + 0x44]
mov ecx, dword [esi + 0x48]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00414b80
add esp, 8
mov ecx, dword [esi + 0x48]
call fcn.00414c00
mov ecx, dword [esi + 0x44]
call fcn.00414c00
mov dword [esi + 0x18], 0xc7b89356
jmp 0x40a286
mov dword [esi + 0x18], 0xd4d8ea1b
jmp 0x40a286
mov eax, dword [esi + 0x4c]
mov dword [esi + 0x18], 0x5d6e19f7
jmp 0x40a286
mov dword [esi + 0x18], 0xb23dd87e
jmp 0x40a286
mov ecx, dword [esi + 0x34]
call fcn.00414c00
mov ecx, dword [esi + 0x58]
call fcn.00414c00
mov dword [esi + 0x18], 0x197796f0
jmp 0x40911c