Function at 0x4083a0
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 + 0x18], ecx
lea eax, [ebp + 8]
mov dword [esi + 0x1c], eax
mov eax, dword [0x43d080]
xor eax, ebp
mov dword [esi + 0x78], eax
mov ecx, dword [0x43e594]
mov eax, dword [0x43e590]
mov edx, ecx
sub edx, 0x9dbb3656
sub edx, 1
add edx, 0x9dbb3656
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x26], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x27], al
mov dword [esi + 0x20], 0x2761b49f
mov eax, dword [esi + 0x20]
mov dword [esi + 0x14], eax
sub eax, 0x864bb2e3
je 0x409093
jmp 0x40841a
mov eax, dword [esi + 0x14]
sub eax, 0x88f439cc
je 0x4095bc
jmp 0x40842d
mov eax, dword [esi + 0x14]
sub eax, 0x8fb00ffa
je 0x408f71
jmp 0x408440
mov eax, dword [esi + 0x14]
sub eax, 0x942bc768
je 0x409737
jmp 0x408453
mov eax, dword [esi + 0x14]
sub eax, 0x9dafdb26
je 0x408d1f
jmp 0x408466
mov eax, dword [esi + 0x14]
sub eax, 0xa7db7873
je 0x4096f0
jmp 0x408479
mov eax, dword [esi + 0x14]
sub eax, 0xa9730de6
je 0x408bf1
jmp 0x40848c
mov eax, dword [esi + 0x14]
sub eax, 0xa99fcef0
je 0x409479
jmp 0x40849f
mov eax, dword [esi + 0x14]
sub eax, 0xb330c24d
je 0x408f17
jmp 0x4084b2
mov eax, dword [esi + 0x14]
sub eax, 0xb5b27b20
je 0x40931d
jmp 0x4084c5
mov eax, dword [esi + 0x14]
sub eax, 0xb64e2dca
je 0x408e3c
jmp 0x4084d8
mov eax, dword [esi + 0x14]
sub eax, 0xbb6aa8f1
je 0x409116
jmp 0x4084eb
mov eax, dword [esi + 0x14]
sub eax, 0xbbab3b91
je 0x408e75
jmp 0x4084fe
mov eax, dword [esi + 0x14]
sub eax, 0xbf5213da
je 0x40926c
jmp 0x408511
mov eax, dword [esi + 0x14]
sub eax, 0xc3b38aa5
je 0x4096e1
jmp 0x408524
mov eax, dword [esi + 0x14]
sub eax, 0xc57a96d5
je 0x4094db
jmp 0x408537
mov eax, dword [esi + 0x14]
sub eax, 0xc5b48e61
je 0x409045
jmp 0x40854a
mov eax, dword [esi + 0x14]
sub eax, 0xcabbbb0f
je 0x40909f
jmp 0x40855d
mov eax, dword [esi + 0x14]
sub eax, 0xcc500b0e
je 0x4094a6
jmp 0x408570
mov eax, dword [esi + 0x14]
sub eax, 0xd370feac
je 0x40974f
jmp 0x408583
mov eax, dword [esi + 0x14]
sub eax, 0xd768e40c
je 0x40962b
jmp 0x408596
mov eax, dword [esi + 0x14]
sub eax, 0xd947c9db
je 0x4091a9
jmp 0x4085a9
mov eax, dword [esi + 0x14]
sub eax, 0xd970d2ff
je 0x408d2b
jmp 0x4085bc
mov eax, dword [esi + 0x14]
sub eax, 0xda9d4c55
je 0x40936a
jmp 0x4085cf
mov eax, dword [esi + 0x14]
sub eax, 0xdcf7dd44
je 0x4095a8
jmp 0x4085e2
mov eax, dword [esi + 0x14]
sub eax, 0xe3161543
je 0x408db2
jmp 0x4085f5
mov eax, dword [esi + 0x14]
sub eax, 0xe5d3d18d
je 0x408e54
jmp 0x408608
mov eax, dword [esi + 0x14]
sub eax, 0xe5e767be
je 0x4097c3
jmp 0x40861b
mov eax, dword [esi + 0x14]
sub eax, 0xe6783b4f
je 0x408f23
jmp 0x40862e
mov eax, dword [esi + 0x14]
sub eax, 0xe6bcdaa7
je 0x409637
jmp 0x408641
mov eax, dword [esi + 0x14]
sub eax, 0xe9e84c44
je 0x4090c4
jmp 0x408654
mov eax, dword [esi + 0x14]
sub eax, 0xea15a234
je 0x409251
jmp 0x408667
mov eax, dword [esi + 0x14]
sub eax, 0xeb2ab41a
je 0x408d04
jmp 0x40867a
mov eax, dword [esi + 0x14]
sub eax, 0xf2b882bd
je 0x409329
jmp 0x40868d
mov eax, dword [esi + 0x14]
sub eax, 0xf603912a
je 0x40939b
jmp 0x4086a0
mov eax, dword [esi + 0x14]
sub eax, 0xf716a7db
je 0x409728
jmp 0x4086b3
mov eax, dword [esi + 0x14]
sub eax, 0xf772ef33
je 0x40949a
jmp 0x4086c6
mov eax, dword [esi + 0x14]
sub eax, 0xfa362569
je 0x4097cf
jmp 0x4086d9
mov eax, dword [esi + 0x14]
sub eax, 0x9e5d3e
je 0x409281
jmp 0x4086ec
mov eax, dword [esi + 0x14]
sub eax, 0x14b8282
je 0x40940e
jmp 0x4086ff
mov eax, dword [esi + 0x14]
sub eax, 0x6a1caf4
je 0x40935e
jmp 0x408712
mov eax, dword [esi + 0x14]
sub eax, 0x825b407
je 0x409743
jmp 0x408725
mov eax, dword [esi + 0x14]
sub eax, 0xc1aae40
je 0x409343
jmp 0x408738
mov eax, dword [esi + 0x14]
sub eax, 0xd2a8520
je 0x40959c
jmp 0x40874b
mov eax, dword [esi + 0x14]
sub eax, 0xf6b805b
je 0x4095f3
jmp 0x40875e
mov eax, dword [esi + 0x14]
sub eax, 0x1c223690
je 0x408fbf
jmp 0x408771
mov eax, dword [esi + 0x14]
sub eax, 0x1fad2bf1
je 0x4094c0
jmp 0x408784
mov eax, dword [esi + 0x14]
sub eax, 0x262d14b8
je 0x4092cf
jmp 0x408797
mov eax, dword [esi + 0x14]
sub eax, 0x2761b49f
je 0x408977
jmp 0x4087aa
mov eax, dword [esi + 0x14]
sub eax, 0x28849fc4
je 0x408d3f
jmp 0x4087bd
mov eax, dword [esi + 0x14]
sub eax, 0x2929c98c
je 0x4095df
jmp 0x4087d0
mov eax, dword [esi + 0x14]
sub eax, 0x324ba739
je 0x408e69
jmp 0x4087e3
mov eax, dword [esi + 0x14]
sub eax, 0x367b6ed5
je 0x408ebb
jmp 0x4087f6
mov eax, dword [esi + 0x14]
sub eax, 0x3729c972
je 0x408e48
jmp 0x408809
mov eax, dword [esi + 0x14]
sub eax, 0x3cbcac0b
je 0x408c06
jmp 0x40881c
mov eax, dword [esi + 0x14]
sub eax, 0x3e305850
je 0x4097b7
jmp 0x40882f
mov eax, dword [esi + 0x14]
sub eax, 0x3e3c42bb
je 0x408c85
jmp 0x408842
mov eax, dword [esi + 0x14]
sub eax, 0x421060c5
je 0x408c12
jmp 0x408855
mov eax, dword [esi + 0x14]
sub eax, 0x43cf0970
je 0x408a47
jmp 0x408868
mov eax, dword [esi + 0x14]
sub eax, 0x46273cc3
je 0x40979b
jmp 0x40887b
mov eax, dword [esi + 0x14]
sub eax, 0x52dc876e
je 0x4089c2
jmp 0x40888e
mov eax, dword [esi + 0x14]
sub eax, 0x58aba936
je 0x4091fb
jmp 0x4088a1
mov eax, dword [esi + 0x14]
sub eax, 0x5c7cc581
je 0x40954e
jmp 0x4088b4
mov eax, dword [esi + 0x14]
sub eax, 0x618165ab
je 0x408fda
jmp 0x4088c7
mov eax, dword [esi + 0x14]
sub eax, 0x634cc835
je 0x408bce
mov bl, byte [esi + 0x26]
mov dh, byte [esi + 0x27]
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, 0xd768e40c
mov ecx, 0x52dc876e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
push eax
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
push eax
mov eax, esp
mov dword [esi + 0x34], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x38], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x3c], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x40], eax
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
mov edx, eax
sub edx, 0xb479c3fd
sub edx, 1
add edx, 0xb479c3fd
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, 0xd768e40c
mov ecx, 0x43cf0970
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dword [esi + 0x20], 0x63aeb761
jmp 0x4097d6
mov eax, dword [esi + 0x44]
mov dword [eax], 0x63
mov dword [esi + 0x20], 0x3cbcac0b
jmp 0x4097d6
mov dword [esi + 0x20], 0x421060c5
jmp 0x4097d6
mov ecx, dword [0x43e594]
mov eax, dword [0x43e590]
mov edx, ecx
sub edx, 0x9f2eeef0
sub edx, 1
add edx, 0x9f2eeef0
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, 0xc3b38aa5
mov ecx, 0x3e3c42bb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov dword [esi + 0x68], eax
mov ecx, dword [0x43e594]
mov eax, dword [0x43e590]
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, 0xc3b38aa5
mov ecx, 0x75486a27
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov edx, dword [esi + 0x68]
mov eax, 0x3729c972
mov ecx, 0x9dafdb26
cmp edx, 0
cmovg eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dword [esi + 0x20], 0xd970d2ff
jmp 0x4097d6
mov eax, dword [esi + 0x44]
mov eax, dword [eax]
mov dword [esi + 0x6c], eax
mov dword [esi + 0x20], 0x28849fc4
jmp 0x4097d6
mov ecx, dword [0x43e594]
mov eax, dword [0x43e590]
mov edx, ecx
sub edx, 0xc9609af
sub edx, 1
add edx, 0xc9609af
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, 0xa7db7873
mov ecx, 0xe3161543
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov ecx, dword [esi + 0x6c]
sub ecx, 0xf568ba1e
add ecx, 0xffffffff
add ecx, 0xf568ba1e
mov eax, dword [esi + 0x44]
mov dword [eax], ecx
mov ecx, dword [0x43e594]
mov eax, dword [0x43e590]
mov edx, ecx
add edx, 0x84194cbc
sub edx, 1
sub edx, 0x84194cbc
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, 0xa7db7873
mov ecx, 0xb64e2dca
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dword [esi + 0x20], 0x421060c5
jmp 0x4097d6
mov dword [esi + 0x20], 0xe5d3d18d
jmp 0x4097d6
mov eax, dword [esi + 0x48]
mov dword [eax], 0x30
mov dword [esi + 0x20], 0x324ba739
jmp 0x4097d6
mov dword [esi + 0x20], 0xbbab3b91
jmp 0x4097d6
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
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, 0xf716a7db
mov ecx, 0x367b6ed5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov eax, dword [esi + 0x48]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x70], al
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
mov edx, eax
sub edx, 0x72886aea
sub edx, 1
add edx, 0x72886aea
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, 0xf716a7db
mov ecx, 0xb330c24d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dword [esi + 0x20], 0xe6783b4f
jmp 0x4097d6
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
mov edx, eax
sub edx, 0x56032da7
sub edx, 1
add edx, 0x56032da7
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, 0x942bc768
mov ecx, 0x8fb00ffa
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
mov edx, eax
sub edx, 0x647d6280
sub edx, 1
add edx, 0x647d6280
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, 0x942bc768
mov ecx, 0x1c223690
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dl, byte [esi + 0x70]
mov eax, 0x7c0d6b01
mov ecx, 0x618165ab
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov ecx, dword [0x43e594]
mov eax, dword [0x43e590]
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, 0x825b407
mov ecx, 0xc5b48e61
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
mov edx, eax
add edx, 0x5ae6ce5d
sub edx, 1
sub edx, 0x5ae6ce5d
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, 0x825b407
mov ecx, 0x864bb2e3
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dword [esi + 0x20], 0xcabbbb0f
jmp 0x4097d6
mov eax, dword [esi + 0x48]
mov ecx, dword [eax]
add ecx, 0xfe5f3fa2
add ecx, 0xffffffff
sub ecx, 0xfe5f3fa2
mov eax, dword [esi + 0x48]
mov dword [eax], ecx
mov dword [esi + 0x20], 0xe9e84c44
jmp 0x4097d6
mov dword [esi + 0x20], 0xbbab3b91
jmp 0x4097d6
mov ecx, dword [esi + 0x4c]
lea eax, str.zsrbcqgqvtizegyxffngzurvpmlrjm
sub esp, 4
mov dword [esp], eax
call fcn.0041d140
mov ecx, dword [esi + 0x50]
lea eax, str.zsrbcqgqvtizegyxffngzurvpmlrjm
sub esp, 4
mov dword [esp], eax
call fcn.0041d140
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x50]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0041d320
add esp, 8
and al, 1
mov byte [esi + 0x71], al
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
mov edx, eax
add edx, 0x8a7c7ce3
sub edx, 1
sub edx, 0x8a7c7ce3
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, 0xd370feac
mov ecx, 0xd947c9db
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dword [esi + 0x20], 0x7541519a
jmp 0x4097d6
mov ecx, dword [esi + 0x50]
call fcn.0041cff0
mov ecx, dword [esi + 0x4c]
call fcn.0041cff0
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
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, 0x46273cc3
mov ecx, 0xea15a234
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dl, byte [esi + 0x71]
mov eax, 0x7c53e6af
mov ecx, 0xbf5213da
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov eax, dword [esi + 0x54]
mov dword [eax], 0x30
mov dword [esi + 0x20], 0x9e5d3e
jmp 0x4097d6
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
mov edx, eax
sub edx, 0xcc1bffe3
sub edx, 1
add edx, 0xcc1bffe3
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, 0x3e305850
mov ecx, 0x262d14b8
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
mov edx, eax
add edx, 0xdae78975
sub edx, 1
sub edx, 0xdae78975
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, 0x3e305850
mov ecx, 0xb5b27b20
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dword [esi + 0x20], 0xf2b882bd
jmp 0x4097d6
mov eax, dword [esi + 0x54]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x72], al
mov dword [esi + 0x20], 0xc1aae40
jmp 0x4097d6
mov dl, byte [esi + 0x72]
mov eax, 0xf603912a
mov ecx, 0x6a1caf4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dword [esi + 0x20], 0xda9d4c55
jmp 0x4097d6
mov eax, dword [esi + 0x54]
mov ecx, dword [eax]
add ecx, 0x224b2078
add ecx, 0xffffffff
sub ecx, 0x224b2078
mov eax, dword [esi + 0x54]
mov dword [eax], ecx
mov dword [esi + 0x20], 0x7c13fe64
jmp 0x4097d6
mov ecx, dword [0x43e594]
mov eax, dword [0x43e590]
mov edx, ecx
sub edx, 0x8834b7db
sub edx, 1
add edx, 0x8834b7db
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, 0xe5e767be
mov ecx, 0x14b8282
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov ecx, dword [0x43e594]
mov eax, dword [0x43e590]
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, 0xe5e767be
mov ecx, 0xa99fcef0
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dword [esi + 0x20], 0x7c53e6af
jmp 0x4097d6
mov dword [esi + 0x20], 0xcc500b0e
jmp 0x4097d6
mov eax, dword [esi + 0x58]
cmp dword [eax], 0
setg al
and al, 1
mov byte [esi + 0x73], al
mov dword [esi + 0x20], 0x1fad2bf1
jmp 0x4097d6
mov dl, byte [esi + 0x73]
mov eax, 0x2929c98c
mov ecx, 0xc57a96d5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov ecx, dword [0x43e594]
mov eax, dword [0x43e590]
mov edx, ecx
sub edx, 0x857da501
sub edx, 1
add edx, 0x857da501
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, 0xfa362569
mov ecx, 0x5c7cc581
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov eax, dword [0x43e594]
mov ecx, dword [0x43e590]
mov edx, eax
add edx, 0xde803793
sub edx, 1
sub edx, 0xde803793
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, 0xfa362569
mov ecx, 0xd2a8520
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x20], eax
jmp 0x4097d6
mov dword [esi + 0x20], 0xdcf7dd44
jmp 0x4097d6
mov eax, dword [esi + 0x58]
mov eax, dword [eax]
mov dword [esi + 0x74], eax
mov dword [esi + 0x20], 0x88f439cc
jmp 0x4097d6
mov ecx, dword [esi + 0x74]
sub ecx, 0xdb0d397f
add ecx, 0xffffffff
add ecx, 0xdb0d397f
mov eax, dword [esi + 0x58]
mov dword [eax], ecx
mov dword [esi + 0x20], 0xcc500b0e
jmp 0x4097d6
mov ecx, dword [esi + 0x3c]
call fcn.0041cff0
mov dword [esi + 0x20], 0xf6b805b
jmp 0x4097d6
mov ecx, dword [esi + 0x38]
call fcn.0041cff0
mov ecx, dword [esi + 0x5c]
call fcn.0041cff0
mov ecx, dword [esi + 0x60]
call fcn.0041cff0
fld dword [0x436238]
fstp xword [esi + 4]
mov ecx, dword [esi + 0x78]
xor ecx, ebp
call fcn.004270e0
fld xword [esi + 4]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x58
mov dword [esi + 0x20], 0x52dc876e
jmp 0x4097d6
mov ecx, dword [esi + 0x18]
push eax
sub esp, 0x14
mov eax, esp
mov dword [esi], eax
mov eax, dword [esi + 0x28]
mov dword [eax], ecx
mov eax, dword [esi + 0x28]
mov eax, dword [esi + 0x2c]
vmovsd xmm0, qword [0x436230]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x30]
mov byte [eax], 1
mov eax, dword [esi + 0x34]
mov dword [eax], 0x16a
mov ecx, dword [esi + 0x38]
lea eax, str.nxynikazgjxswbqqnatijfuxyukxnbdkywvowmjkkukbfzkskuwmroqqwtooukucrjmhkytj
sub esp, 4
mov dword [esp], eax
call fcn.0041d140
mov ecx, dword [esi + 0x3c]
lea eax, str.zsrbcqgqvtizegyxffngzurvpmlrjm
sub esp, 4
mov dword [esp], eax
call fcn.0041d140
mov ecx, dword [esi + 0x40]
lea eax, str.nxynikazgjxswbqqnatijfuxyukxnbdkywvowmjkkukbfzkskuwmroqqwtooukucrjmhkytj
sub esp, 4
mov dword [esp], eax
call fcn.0041d140
mov ecx, dword [esi]
lea eax, str.nxynikazgjxswbqqnatijfuxyukxnbdkywvowmjkkukbfzkskuwmroqqwtooukucrjmhkytj
sub esp, 4
mov dword [esp], eax
call fcn.0041d140
mov ecx, dword [esi]
mov eax, dword [esi + 0x40]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0041d3b0
mov ecx, dword [esi]
add esp, 8
call fcn.0041cff0
mov dword [esi + 0x20], 0x6d52a64d
jmp 0x4097d6
mov eax, dword [esi + 0x44]
mov dword [esi + 0x20], 0x3e3c42bb
jmp 0x4097d6
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 eax, dword [esi + 0x6c]
mov eax, dword [esi + 0x6c]
mov ecx, dword [esi + 0x6c]
sub ecx, 0xab7d2b23
add ecx, 0xffffffff
add ecx, 0xab7d2b23
mov eax, dword [esi + 0x44]
mov dword [eax], ecx
mov dword [esi + 0x20], 0xe3161543
jmp 0x4097d6
mov eax, dword [esi + 0x48]
mov dword [esi + 0x20], 0x367b6ed5
jmp 0x4097d6
mov dword [esi + 0x20], 0x8fb00ffa
jmp 0x4097d6
mov dword [esi + 0x20], 0xc5b48e61
jmp 0x4097d6
mov ecx, dword [esi + 0x4c]
lea eax, str.zsrbcqgqvtizegyxffngzurvpmlrjm
sub esp, 4
mov dword [esp], eax
call fcn.0041d140
mov ecx, dword [esi + 0x50]
lea eax, str.zsrbcqgqvtizegyxffngzurvpmlrjm
sub esp, 4
mov dword [esp], eax
call fcn.0041d140
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x50]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.0041d320
add esp, 8
mov dword [esi + 0x20], 0xbb6aa8f1
jmp 0x4097d6
mov ecx, dword [esi + 0x50]
call fcn.0041cff0
mov ecx, dword [esi + 0x4c]
call fcn.0041cff0
mov dword [esi + 0x20], 0x58aba936
jmp 0x4097d6
mov dword [esi + 0x20], 0x262d14b8
jmp 0x4097d6
mov dword [esi + 0x20], 0x14b8282
jmp 0x4097d6
mov dword [esi + 0x20], 0x5c7cc581
jmp 0x408404