Function at 0x40c270
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
mov al, byte [ebp + 0x18]
mov byte [esi + 0x1f], al
vmovsd xmm0, qword [ebp + 0x10]
vmovsd qword [esi + 0x20], xmm0
mov eax, dword [ebp + 0xc]
mov dword [esi + 0x28], eax
mov al, byte [ebp + 8]
mov byte [esi + 0x2f], al
mov eax, dword [0x4ff070]
xor eax, ebp
mov dword [esi + 0x78], eax
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
sub edx, 0xd5383b34
sub edx, 1
add edx, 0xd5383b34
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
and cl, 1
mov byte [esi + 0x3a], cl
cmp eax, 0xa
setl al
and al, 1
mov byte [esi + 0x3b], al
mov dword [esi + 0x34], 0x795ec1d3
mov eax, dword [esi + 0x34]
mov dword [esi + 0x14], eax
sub eax, 0x8453ec11
je 0x40ff4f
jmp 0x40c300
mov eax, dword [esi + 0x14]
sub eax, 0x857b40ff
je 0x40e269
jmp 0x40c313
mov eax, dword [esi + 0x14]
sub eax, 0x859fda60
je 0x40e10c
jmp 0x40c326
mov eax, dword [esi + 0x14]
sub eax, 0x85adaf90
je 0x40fe64
jmp 0x40c339
mov eax, dword [esi + 0x14]
sub eax, 0x861fec38
je 0x40fe88
jmp 0x40c34c
mov eax, dword [esi + 0x14]
sub eax, 0x86d116ee
je 0x40eeba
jmp 0x40c35f
mov eax, dword [esi + 0x14]
sub eax, 0x879edfad
je 0x40f45b
jmp 0x40c372
mov eax, dword [esi + 0x14]
sub eax, 0x8926cfef
je 0x40ec83
jmp 0x40c385
mov eax, dword [esi + 0x14]
sub eax, 0x894ef1ab
je 0x40ef08
jmp 0x40c398
mov eax, dword [esi + 0x14]
sub eax, 0x8a543865
je 0x40fd95
jmp 0x40c3ab
mov eax, dword [esi + 0x14]
sub eax, 0x8ac73c58
je 0x40ea23
jmp 0x40c3be
mov eax, dword [esi + 0x14]
sub eax, 0x8ad48fbe
je 0x40d782
jmp 0x40c3d1
mov eax, dword [esi + 0x14]
sub eax, 0x8d39ca81
je 0x40f841
jmp 0x40c3e4
mov eax, dword [esi + 0x14]
sub eax, 0x8ef4dfa4
je 0x40fefc
jmp 0x40c3f7
mov eax, dword [esi + 0x14]
sub eax, 0x8facbcbe
je 0x40dc40
jmp 0x40c40a
mov eax, dword [esi + 0x14]
sub eax, 0x8fce88e2
je 0x40fd89
jmp 0x40c41d
mov eax, dword [esi + 0x14]
sub eax, 0x91ac269e
je 0x40de87
jmp 0x40c430
mov eax, dword [esi + 0x14]
sub eax, 0x92807498
je 0x40e39d
jmp 0x40c443
mov eax, dword [esi + 0x14]
sub eax, 0x937cc97d
je 0x40f34f
jmp 0x40c456
mov eax, dword [esi + 0x14]
sub eax, 0x98159740
je 0x40d917
jmp 0x40c469
mov eax, dword [esi + 0x14]
sub eax, 0x99b988c9
je 0x40e914
jmp 0x40c47c
mov eax, dword [esi + 0x14]
sub eax, 0x99c476a7
je 0x40f6ae
jmp 0x40c48f
mov eax, dword [esi + 0x14]
sub eax, 0x9ae78033
je 0x40f3e4
jmp 0x40c4a2
mov eax, dword [esi + 0x14]
sub eax, 0x9b114e68
je 0x40ecf6
jmp 0x40c4b5
mov eax, dword [esi + 0x14]
sub eax, 0x9bc8a3c0
je 0x40db5f
jmp 0x40c4c8
mov eax, dword [esi + 0x14]
sub eax, 0x9c7abf74
je 0x40ec10
jmp 0x40c4db
mov eax, dword [esi + 0x14]
sub eax, 0x9e99a836
je 0x40fea3
jmp 0x40c4ee
mov eax, dword [esi + 0x14]
sub eax, 0x9f15cee1
je 0x40ed61
jmp 0x40c501
mov eax, dword [esi + 0x14]
sub eax, 0xa143c356
je 0x40e34f
jmp 0x40c514
mov eax, dword [esi + 0x14]
sub eax, 0xa1a109a9
je 0x40ef7b
jmp 0x40c527
mov eax, dword [esi + 0x14]
sub eax, 0xa8681a5c
je 0x40d9d8
jmp 0x40c53a
mov eax, dword [esi + 0x14]
sub eax, 0xa9f2278b
je 0x40d183
jmp 0x40c54d
mov eax, dword [esi + 0x14]
sub eax, 0xaa00f96d
je 0x40e6ee
jmp 0x40c560
mov eax, dword [esi + 0x14]
sub eax, 0xab363762
je 0x40fb0f
jmp 0x40c573
mov eax, dword [esi + 0x14]
sub eax, 0xac60b46d
je 0x40d43b
jmp 0x40c586
mov eax, dword [esi + 0x14]
sub eax, 0xac693be7
je 0x40f7ce
jmp 0x40c599
mov eax, dword [esi + 0x14]
sub eax, 0xadcbd12b
je 0x40da92
jmp 0x40c5ac
mov eax, dword [esi + 0x14]
sub eax, 0xaf009b3a
je 0x40fd50
jmp 0x40c5bf
mov eax, dword [esi + 0x14]
sub eax, 0xaf4470df
je 0x40e635
jmp 0x40c5d2
mov eax, dword [esi + 0x14]
sub eax, 0xb01aa28b
je 0x40ee1a
jmp 0x40c5e5
mov eax, dword [esi + 0x14]
sub eax, 0xb2a59928
je 0x40fd7d
jmp 0x40c5f8
mov eax, dword [esi + 0x14]
sub eax, 0xb3a907bc
je 0x40f4dd
jmp 0x40c60b
mov eax, dword [esi + 0x14]
sub eax, 0xb496c499
je 0x40d965
jmp 0x40c61e
mov eax, dword [esi + 0x14]
sub eax, 0xb5c59c2d
je 0x40ff7f
jmp 0x40c631
mov eax, dword [esi + 0x14]
sub eax, 0xb5cfe62f
je 0x40e2fd
jmp 0x40c644
mov eax, dword [esi + 0x14]
sub eax, 0xb7e7f8ff
je 0x40e9d5
jmp 0x40c657
mov eax, dword [esi + 0x14]
sub eax, 0xb89a2a04
je 0x40dd78
jmp 0x40c66a
mov eax, dword [esi + 0x14]
sub eax, 0xba0598c9
je 0x40f763
jmp 0x40c67d
mov eax, dword [esi + 0x14]
sub eax, 0xbaf0045f
je 0x40fcd5
jmp 0x40c690
mov eax, dword [esi + 0x14]
sub eax, 0xbb0e316d
je 0x40f63b
jmp 0x40c6a3
mov eax, dword [esi + 0x14]
sub eax, 0xbf2422b5
je 0x40f93f
jmp 0x40c6b6
mov eax, dword [esi + 0x14]
sub eax, 0xbfc54837
je 0x40ff40
jmp 0x40c6c9
mov eax, dword [esi + 0x14]
sub eax, 0xc048307d
je 0x40df65
jmp 0x40c6dc
mov eax, dword [esi + 0x14]
sub eax, 0xc1eb1785
je 0x40f8c0
jmp 0x40c6ef
mov eax, dword [esi + 0x14]
sub eax, 0xc3afc66d
je 0x40ee6c
jmp 0x40c702
mov eax, dword [esi + 0x14]
sub eax, 0xc773079b
je 0x40f933
jmp 0x40c715
mov eax, dword [esi + 0x14]
sub eax, 0xc914dd63
je 0x40e761
jmp 0x40c728
mov eax, dword [esi + 0x14]
sub eax, 0xcbd8ad7e
je 0x40d03a
jmp 0x40c73b
mov eax, dword [esi + 0x14]
sub eax, 0xcc204268
je 0x40ee26
jmp 0x40c74e
mov eax, dword [esi + 0x14]
sub eax, 0xcc38eef5
je 0x40f731
jmp 0x40c761
mov eax, dword [esi + 0x14]
sub eax, 0xcd8a300b
je 0x40ff34
jmp 0x40c774
mov eax, dword [esi + 0x14]
sub eax, 0xcee16378
je 0x40fa9c
jmp 0x40c787
mov eax, dword [esi + 0x14]
sub eax, 0xcf7fcbfc
je 0x40da1e
jmp 0x40c79a
mov eax, dword [esi + 0x14]
sub eax, 0xd125ae2e
je 0x40e5e7
jmp 0x40c7ad
mov eax, dword [esi + 0x14]
sub eax, 0xd2983dfa
je 0x40f202
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
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, 0x516ae496
mov ecx, 0x25af0fdb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
push eax
mov eax, esp
mov dword [esi + 0x3c], eax
sub esp, 8
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
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
push eax
mov eax, esp
mov dword [esi + 0x4c], eax
sub esp, 0x18
mov eax, esp
mov dword [esi + 0x50], eax
push eax
mov eax, esp
mov dword [esi + 0x54], eax
push eax
mov eax, esp
mov dword [esi + 0x58], eax
push eax
mov eax, esp
mov dword [esi + 0x5c], eax
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
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, 0xb2a59928
mov ecx, 0x5c68dfe5
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
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, 0x399edaa8
mov ecx, 0xe81f5b16
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov dl, byte [esi + 0x6b]
mov eax, 0xcc204268
mov ecx, 0xdc1f55ae
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
mov edx, eax
sub edx, 0xe01cd494
sub edx, 1
add edx, 0xe01cd494
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, 0x85adaf90
mov ecx, 0xb496c499
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0xaba772d8
sub edx, 1
sub edx, 0xaba772d8
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, 0xf78d8509
mov ecx, 0xa8681a5c
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
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, 0xd2983dfa
mov ecx, 0xcf7fcbfc
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [esi + 0x64]
mov dword [eax], 0x3c
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
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, 0xd2983dfa
mov ecx, 0xadcbd12b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov dword [esi + 0x34], 0x5efdc373
jmp 0x410029
mov dword [esi + 0x34], 0xf606f965
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
mov edx, eax
sub edx, 0x80a72d04
sub edx, 1
add edx, 0x80a72d04
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, 0xf7232a90
mov ecx, 0x78f5ff2e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [esi + 0x6c]
cmp eax, 0
setg al
and al, 1
mov byte [esi + 0x73], al
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0x58cf6713
sub edx, 1
sub edx, 0x58cf6713
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, 0xd38ad845
mov ecx, 0x199d72b1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
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, 0xb3a907bc
mov ecx, 0xe0f91aeb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0x29246678
sub edx, 1
sub edx, 0x29246678
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, 0x67dba4a1
mov ecx, 0xc301c87
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov dword [esi + 0x34], 0xebed8996
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
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, 0x861fec38
mov ecx, 0xdf225402
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
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, 0xcee16378
mov ecx, 0xd5d39391
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
mov edx, eax
sub edx, 0x613a8279
sub edx, 1
add edx, 0x613a8279
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, 0xda7939d3
mov ecx, 0x92807498
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
mov edx, eax
sub edx, 0x7996c8bb
sub edx, 1
add edx, 0x7996c8bb
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, 0xe5fcd5d3
mov ecx, 0xd7fc04d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
mov edx, eax
sub edx, 0x8c75c4f0
sub edx, 1
add edx, 0x8c75c4f0
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, 0x683a2239
mov ecx, 0xaf4470df
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
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, 0x683a2239
mov ecx, 0x736c1e05
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
sub edx, 0x46698042
sub edx, 1
add edx, 0x46698042
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, 0x41ac88e2
mov ecx, 0xc914dd63
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
sub edx, 0x53aa26b3
sub edx, 1
add edx, 0x53aa26b3
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, 0xda7939d3
mov ecx, 0x3047ef63
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0x99c67473
sub edx, 1
sub edx, 0x99c67473
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, 0x75032851
mov ecx, 0x667c2be9
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
mov edx, eax
add edx, 0xbf9b118b
sub edx, 1
sub edx, 0xbf9b118b
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, 0x76e60d4
mov ecx, 0x8ac73c58
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
sub edx, 0x2fbfa7a1
sub edx, 1
add edx, 0x2fbfa7a1
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, 0xd37f16d
mov ecx, 0xfd06cad2
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0xaee3c321
sub edx, 1
sub edx, 0xaee3c321
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, 0x8ef4dfa4
mov ecx, 0x8926cfef
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0x705df77e
sub edx, 1
sub edx, 0x705df77e
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, 0xba0598c9
mov ecx, 0x9b114e68
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
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, 0x50e0d09
mov ecx, 0x9f15cee1
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
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, 0x2db078d1
mov ecx, 0xeef6f486
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov dword [esi + 0x34], 0xcc204268
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
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, 0x3f90f0f6
mov ecx, 0xc3afc66d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
mov edx, eax
add edx, 0x14d938ae
sub edx, 1
sub edx, 0x14d938ae
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, 0x3f90f0f6
mov ecx, 0x86d116ee
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
mov edx, eax
add edx, 0x48a55177
sub edx, 1
sub edx, 0x48a55177
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, 0xdcdc855d
mov ecx, 0x894ef1ab
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
sub edx, 0x561be639
sub edx, 1
add edx, 0x561be639
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, 0x5d6ffc5e
mov ecx, 0xa1a109a9
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [esi + 0x50]
call fcn.00484a30
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
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, 0x5d6ffc5e
mov ecx, 0x3c5d58cb
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [esi + 0x64]
mov dword [eax], 0x3c
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
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, 0x47a5eb98
mov ecx, 0x58c2828d
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov dword [esi + 0x34], 0xcf7fcbfc
jmp 0x410029
mov eax, dword [esi + 0x6c]
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0x64e8f025
sub edx, 1
sub edx, 0x64e8f025
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, 0xbfc54837
mov ecx, 0xd6314db4
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov dword [esi + 0x34], 0xe0f91aeb
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0x2e6a59d2
sub edx, 1
sub edx, 0x2e6a59d2
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, 0x18140be4
mov ecx, 0x99c476a7
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
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, 0x18140be4
mov ecx, 0x4bf18d3e
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov dword [esi + 0x34], 0x7625b207
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
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, 0x64cb834b
mov ecx, 0xac693be7
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0xfd036ceb
sub edx, 1
sub edx, 0xfd036ceb
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, 0x64cb834b
mov ecx, 0x8d39ca81
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov dword [esi + 0x34], 0xf4bd8e81
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0x8db386f1
sub edx, 1
sub edx, 0x8db386f1
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, 0x3746db2
mov ecx, 0xc773079b
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov dword [esi + 0x34], 0x67219477
jmp 0x410029
mov eax, dword [esi + 0x64]
mov dword [eax], 0x3c
mov dword [esi + 0x34], 0x54d9f3fc
jmp 0x410029
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
sub edx, 0xde777a5d
sub edx, 1
add edx, 0xde777a5d
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, 0x1c93324
mov ecx, 0xab363762
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov eax, dword [esi + 0x64]
mov eax, dword [0x50064c]
mov ecx, dword [0x500648]
mov edx, eax
add edx, 0xe260a9b8
sub edx, 1
sub edx, 0xe260a9b8
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, 0x1c93324
mov ecx, 0x34987a2a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov ecx, dword [esi + 0x50]
call fcn.00484a30
mov ecx, dword [0x50064c]
mov eax, dword [0x500648]
mov edx, ecx
add edx, 0xfb83b170
sub edx, 1
sub edx, 0xfb83b170
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, 0x7cac8505
mov ecx, 0xaf009b3a
test dl, 1
cmovne eax, ecx
mov dword [esi + 0x34], eax
jmp 0x410029
mov dword [esi + 0x34], 0x894ef1ab
jmp 0x410029
mov dword [esi + 0x34], 0xa9f2278b
jmp 0x410029
mov dword [esi + 0x34], 0x3df3c431
jmp 0x410029
mov ecx, dword [esi + 0x18]
mov dl, byte [esi + 0x2f]
mov edi, dword [esi + 0x28]
vmovsd xmm0, qword [esi + 0x20]
mov dh, byte [esi + 0x1f]
push eax
sub esp, 0x14
mov eax, esp
mov dword [esi + 4], eax
and dh, 1
mov eax, dword [esi + 0x3c]
mov byte [eax], dh
mov eax, dword [esi + 0x40]
vmovsd qword [eax], xmm0
mov eax, dword [esi + 0x44]
mov dword [eax], edi
and dl, 1
mov eax, dword [esi + 0x48]
mov byte [eax], dl
mov eax, dword [esi + 0x4c]
mov dword [eax], ecx
mov eax, dword [esi + 0x4c]
mov ecx, dword [esi + 0x50]
lea eax, str.sksfqfsolqkwlulnejmdadopuqdgrispdequzhxaxollvv
sub esp, 4
mov dword [esp], eax
call fcn.00485450
mov eax, dword [esi + 0x54]
mov byte [eax], 0
mov eax, dword [esi + 0x58]
mov dword [eax], 0x2e6
mov eax, dword [esi + 0x5c]
mov byte [eax], 0
mov ecx, dword [esi + 0x60]
lea eax, str.sksfqfsolqkwlulnejmdadopuqdgrispdequzhxaxollvv
sub esp, 4
mov dword [esp], eax
call fcn.00485450
mov ecx, dword [esi + 4]
lea eax, str.sksfqfsolqkwlulnejmdadopuqdgrispdequzhxaxollvv
sub esp, 4
mov dword [esp], eax
call fcn.00485450
mov ecx, dword [esi + 4]
mov eax, dword [esi + 0x60]
sub esp, 8
mov dword [esp], ecx
mov dword [esp + 4], eax
call fcn.00487590
mov ecx, dword [esi + 4]
add esp, 8
call fcn.00484a30
mov ecx, dword [esi + 0x60]
call fcn.00484a30
mov dword [esi + 0x34], 0x1a11fe2b
jmp 0x410029
mov dword [esi + 0x34], 0x98159740
jmp 0x410029
mov eax, dword [esi + 0x64]
mov dword [esi + 0x34], 0xdf225402
jmp 0x410029
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov ecx, dword [esi + 0x74]
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 dword [esi + 0x34], 0xfef0b597
jmp 0x410029
mov dword [esi + 0x34], 0x9c7abf74
jmp 0x410029
mov dword [esi + 0x34], 0x34126737
jmp 0x410029
mov eax, dword [esi + 0x6c]
mov dword [esi + 0x34], 0x879edfad
jmp 0x410029
mov dword [esi + 0x34], 0x515fe42d
jmp 0x410029
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov eax, dword [esi + 0x74]
mov ecx, dword [esi + 0x74]
add ecx, 0xdf408214
add ecx, 0xffffffff
sub ecx, 0xdf408214
mov eax, dword [esi + 0x64]
mov dword [eax], ecx
mov dword [esi + 0x34], 0xedb5fac0
jmp 0x410029
jmp 0x40c2ea