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

Disassembly:
push ebx
push esi
sub esp, 0x1d0
mov eax, dword [esp + 0x1e0]
mov dword [esp + 0x1bc], eax
mov eax, dword [esp + 0x1dc]
mov dword [esp + 0x1c0], eax
mov eax, dword [0x10066d08]
mov dword [esp + 0x1c4], eax
mov ecx, dword [0x10066d04]
mov dword [esp + 0x1c8], ecx
sub eax, 0x774febbb
mov dword [esp + 0x1cc], eax
mov eax, dword [esp + 0x1cc]
sub eax, 1
mov dword [esp + 0x1b8], eax
mov eax, dword [esp + 0x1b8]
add eax, 0x774febbb
mov dword [esp + 0x1b4], eax
mov ecx, dword [esp + 0x1b4]
mov eax, dword [esp + 0x1c4]
imul eax, ecx
and eax, 1
mov dword [esp + 0x1b0], eax
mov eax, dword [esp + 0x1b0]
cmp eax, 0
sete al
mov byte [esp + 0x1af], al
mov cl, byte [esp + 0x1af]
mov eax, dword [esp + 0x1c8]
cmp eax, 0xa
setl dl
mov al, cl
and al, dl
xor cl, dl
or al, cl
test al, 1
jne 0x10038705
jmp 0x10039794
mov eax, dword [0x10066d08]
mov dword [esp + 0x1a0], eax
mov ecx, dword [0x10066d04]
mov dword [esp + 0x1a4], ecx
sub eax, 0x96affb24
sub eax, 1
add eax, 0x96affb24
mov dword [esp + 0x1a8], eax
mov ecx, dword [esp + 0x1a8]
mov eax, dword [esp + 0x1a0]
imul eax, ecx
and eax, 1
mov dword [esp + 0x19c], eax
mov eax, dword [esp + 0x1a4]
mov ecx, dword [esp + 0x19c]
cmp ecx, 0
sete cl
mov byte [esp + 0x197], cl
cmp eax, 0xa
setl al
mov byte [esp + 0x198], al
xor cl, 0xff
mov byte [esp + 0x199], cl
xor al, 0xff
mov byte [esp + 0x19a], al
mov al, 1
xor al, 0
mov byte [esp + 0x19b], al
mov al, byte [esp + 0x199]
and al, 0
mov byte [esp + 0x196], al
mov cl, byte [esp + 0x19a]
mov al, byte [esp + 0x199]
mov dl, byte [esp + 0x196]
mov bl, byte [esp + 0x19b]
mov ch, byte [esp + 0x198]
mov dh, byte [esp + 0x197]
and dh, bl
mov ah, cl
and ah, 0
and ch, bl
or dl, dh
or ah, ch
xor dl, ah
mov byte [esp + 0x194], dl
or al, cl
xor al, 0xff
mov byte [esp + 0x195], al
mov al, byte [esp + 0x194]
mov cl, byte [esp + 0x195]
mov dl, byte [esp + 0x19b]
or dl, 0
and cl, dl
or al, cl
test al, 1
jne 0x10038817
jmp 0x10039794
mov eax, dword [0x10066d08]
mov dword [esp + 0x190], eax
mov eax, dword [0x10066d04]
mov dword [esp + 0x18c], eax
mov eax, dword [esp + 0x190]
add eax, 0x244b292
sub eax, 1
sub eax, 0x244b292
mov dword [esp + 0x188], eax
mov ecx, dword [esp + 0x188]
mov eax, dword [esp + 0x190]
imul eax, ecx
mov dword [esp + 0x184], eax
mov eax, dword [esp + 0x18c]
mov ecx, dword [esp + 0x184]
and ecx, 1
cmp ecx, 0
sete cl
mov byte [esp + 0x182], cl
cmp eax, 0xa
setl al
mov byte [esp + 0x183], al
mov dl, byte [esp + 0x183]
mov cl, byte [esp + 0x182]
mov al, cl
and al, dl
xor cl, dl
or al, cl
test al, 1
jne 0x100388b0
jmp 0x100396bb
mov eax, dword [0x10066d08]
mov dword [esp + 0x17c], eax
mov eax, dword [esp + 0x17c]
mov ecx, dword [0x10066d04]
mov dword [esp + 0x174], ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [esp + 0x178], eax
mov ecx, dword [esp + 0x174]
mov edx, dword [esp + 0x178]
mov eax, dword [esp + 0x17c]
imul eax, edx
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0x171], al
cmp ecx, 0xa
setl cl
mov byte [esp + 0x172], cl
and al, cl
mov byte [esp + 0x173], al
mov cl, byte [esp + 0x172]
mov al, byte [esp + 0x171]
xor al, cl
mov byte [esp + 0x170], al
mov cl, byte [esp + 0x170]
mov al, byte [esp + 0x173]
or al, cl
mov byte [esp + 0x16f], al
mov al, byte [esp + 0x16f]
test al, 1
jne 0x1003895e
jmp 0x10039799
mov eax, dword [esp + 0x1bc]
add eax, 0x1d
mov dword [esp + 0x164], eax
mov eax, dword [0x10065310]
mov eax, dword [eax - 0x3edd26b7]
mov dword [esp + 0x168], eax
mov eax, dword [esp + 0x168]
cmp eax, 1
sete al
mov byte [esp + 0x163], al
mov eax, dword [0x10066d08]
mov dword [esp + 0x15c], eax
mov eax, dword [esp + 0x15c]
mov ecx, dword [0x10066d04]
mov dword [esp + 0x154], ecx
xor edx, edx
sub edx, 1
mov ecx, eax
add ecx, edx
imul eax, ecx
and eax, 1
mov dword [esp + 0x158], eax
mov ecx, dword [esp + 0x154]
mov eax, dword [esp + 0x158]
cmp eax, 0
sete al
cmp ecx, 0xa
setl cl
mov dl, al
and dl, cl
mov byte [esp + 0x152], dl
xor al, cl
mov byte [esp + 0x153], al
mov cl, byte [esp + 0x153]
mov al, byte [esp + 0x152]
or al, cl
test al, 1
jne 0x10038a16
jmp 0x10039799
mov eax, dword [0x10066d08]
mov dword [esp + 0x14c], eax
mov eax, dword [esp + 0x14c]
mov ecx, dword [0x10066d04]
mov dword [esp + 0x144], ecx
sub eax, 0xda30e5e7
sub eax, 1
add eax, 0xda30e5e7
mov dword [esp + 0x148], eax
mov ecx, dword [esp + 0x148]
mov eax, dword [esp + 0x14c]
imul eax, ecx
mov dword [esp + 0x140], eax
mov eax, dword [esp + 0x140]
and eax, 1
mov dword [esp + 0x13c], eax
mov ecx, dword [esp + 0x144]
mov eax, dword [esp + 0x13c]
cmp eax, 0
sete al
mov byte [esp + 0x139], al
cmp ecx, 0xa
setl cl
mov byte [esp + 0x13a], cl
and al, cl
mov byte [esp + 0x13b], al
mov al, byte [esp + 0x13b]
mov dl, byte [esp + 0x13a]
mov cl, byte [esp + 0x139]
xor cl, dl
or al, cl
test al, 1
jne 0x10038aca
jmp 0x100396bb
mov cl, byte [esp + 0x163]
xor eax, eax
test cl, 1
mov dword [esp + 0x134], eax
jne 0x100390ae
jmp 0x10038ae8
mov eax, dword [esp + 0x134]
mov dword [esp + 0x130], eax
mov ecx, dword [0x10066d08]
mov eax, dword [0x10066d04]
mov edx, ecx
add edx, 0xb3573bcc
sub edx, 1
sub edx, 0xb3573bcc
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
cmp eax, 0xa
setl dl
mov al, cl
and al, dl
xor cl, dl
or al, cl
test al, 1
jne 0x10038b39
jmp 0x100396dc
mov eax, dword [0x10066d08]
mov ecx, dword [0x10066d04]
mov dword [esp + 0x128], ecx
mov ecx, eax
add ecx, 0x22a48e0c
sub ecx, 1
sub ecx, 0x22a48e0c
imul eax, ecx
and eax, 1
mov dword [esp + 0x12c], eax
mov ecx, dword [esp + 0x128]
mov eax, dword [esp + 0x12c]
cmp eax, 0
sete ah
cmp ecx, 0xa
setl dl
mov al, ah
xor al, 0xff
mov byte [esp + 0x124], al
mov cl, dl
xor cl, 0xff
mov byte [esp + 0x125], cl
mov ch, 1
xor ch, 1
mov byte [esp + 0x126], ch
and al, 0xff
and ah, ch
and cl, 0xff
and dl, ch
or al, ah
or cl, dl
xor al, cl
mov byte [esp + 0x127], al
mov al, byte [esp + 0x126]
mov dl, byte [esp + 0x125]
mov cl, byte [esp + 0x124]
or cl, dl
xor cl, 0xff
mov byte [esp + 0x122], cl
or al, 1
mov byte [esp + 0x123], al
mov cl, byte [esp + 0x123]
mov al, byte [esp + 0x122]
and al, cl
mov byte [esp + 0x121], al
mov cl, byte [esp + 0x121]
mov al, byte [esp + 0x127]
or al, cl
mov byte [esp + 0x120], al
mov al, byte [esp + 0x120]
test al, 1
jne 0x10038c28
jmp 0x100397ba
mov eax, dword [esp + 0x130]
mov ecx, dword [esp + 0x164]
mov cl, byte [ecx + eax]
mov esi, 0x1d
xor edx, edx
div esi
mov eax, dword [esp + 0x1bc]
mov al, byte [eax + edx]
mov byte [esp + 0x11b], al
mov dl, cl
xor dl, 0xff
and dl, 0x4b
mov byte [esp + 0x11c], dl
mov dl, 0xff
xor dl, 0x4b
mov byte [esp + 0x11d], dl
and cl, dl
mov byte [esp + 0x11e], cl
xor al, 0xff
mov byte [esp + 0x11f], al
mov ecx, dword [esp + 0x1c0]
mov bh, byte [esp + 0x11e]
mov dl, byte [esp + 0x11c]
mov al, byte [esp + 0x11d]
mov bl, byte [esp + 0x11b]
mov dh, byte [esp + 0x11f]
and dh, 0x4b
and bl, al
mov eax, dword [esp + 0x130]
or dl, bh
or dh, bl
xor dl, dh
mov byte [ecx + eax], dl
xor ecx, ecx
sub ecx, eax
xor eax, eax
sub eax, 1
add ecx, eax
xor eax, eax
sub eax, ecx
mov dword [esp + 0x108], eax
cmp eax, 5
sete al
mov byte [esp + 0x10f], al
mov eax, dword [0x10066d08]
mov ecx, dword [0x10066d04]
mov dword [esp + 0x110], ecx
xor edx, edx
sub edx, 1
mov ecx, eax
add ecx, edx
imul eax, ecx
mov dword [esp + 0x114], eax
mov ecx, dword [esp + 0x110]
mov eax, dword [esp + 0x114]
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0x105], al
cmp ecx, 0xa
setl cl
mov byte [esp + 0x106], cl
xor al, 0xff
mov byte [esp + 0x107], al
mov al, byte [esp + 0x107]
mov cl, byte [esp + 0x106]
xor cl, 0xff
mov byte [esp + 0x102], cl
mov cl, 1
xor cl, 1
mov byte [esp + 0x103], cl
and al, 0xff
mov byte [esp + 0x104], al
mov dl, byte [esp + 0x103]
mov ah, byte [esp + 0x102]
mov cl, byte [esp + 0x107]
mov al, byte [esp + 0x104]
mov dh, byte [esp + 0x106]
mov bl, byte [esp + 0x105]
and bl, dl
mov ch, ah
and ch, 0xff
and dh, dl
or al, bl
or ch, dh
xor al, ch
or cl, ah
xor cl, 0xff
or dl, 1
and cl, dl
or al, cl
mov byte [esp + 0x101], al
mov al, byte [esp + 0x101]
test al, 1
jne 0x10038dc8
jmp 0x100397ba
mov eax, dword [0x10066d08]
mov dword [esp + 0xf4], eax
mov ecx, dword [0x10066d04]
mov dword [esp + 0xf8], ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [esp + 0xfc], eax
mov ecx, dword [esp + 0xfc]
mov eax, dword [esp + 0xf4]
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0xf3], al
mov cl, byte [esp + 0xf3]
mov eax, dword [esp + 0xf8]
cmp eax, 0xa
setl al
mov byte [esp + 0xf0], al
xor cl, 0xff
mov byte [esp + 0xf1], cl
xor al, 0xff
mov byte [esp + 0xf2], al
mov cl, byte [esp + 0xf2]
mov al, byte [esp + 0xf1]
mov ch, byte [esp + 0xf0]
mov dh, byte [esp + 0xf3]
mov bl, 1
xor bl, 0
mov byte [esp + 0xed], bl
mov dl, al
and dl, 0
and dh, bl
mov ah, cl
and ah, 0
and ch, bl
or dl, dh
or ah, ch
xor dl, ah
mov byte [esp + 0xee], dl
or al, cl
xor al, 0xff
mov byte [esp + 0xef], al
mov al, byte [esp + 0xee]
mov cl, byte [esp + 0xef]
mov dl, byte [esp + 0xed]
or dl, 0
and cl, dl
or al, cl
mov byte [esp + 0xec], al
mov al, byte [esp + 0xec]
test al, 1
jne 0x10038ec3
jmp 0x100396dc
mov eax, dword [esp + 0x108]
mov cl, byte [esp + 0x10f]
test cl, 1
mov dword [esp + 0x134], eax
jne 0x10038ee6
jmp 0x10038ae8
mov eax, dword [0x10066d08]
mov ecx, dword [0x10066d04]
mov dword [esp + 0xe4], ecx
mov ecx, eax
add ecx, 0x3808049
sub ecx, 1
sub ecx, 0x3808049
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0xeb], al
mov eax, dword [esp + 0xe4]
cmp eax, 0xa
setl al
mov byte [esp + 0xe3], al
mov al, byte [esp + 0xeb]
mov cl, byte [esp + 0xe3]
mov dl, al
xor dl, 0xff
mov byte [esp + 0xde], dl
xor cl, 0xff
mov byte [esp + 0xdf], cl
mov cl, 1
xor cl, 1
mov byte [esp + 0xe0], cl
and dl, 0xff
mov byte [esp + 0xe1], dl
and al, cl
mov byte [esp + 0xe2], al
mov ah, byte [esp + 0xe2]
mov al, byte [esp + 0xe1]
mov ch, byte [esp + 0xe0]
mov dl, byte [esp + 0xe3]
mov cl, byte [esp + 0xdf]
and cl, 0xff
and dl, ch
or al, ah
or cl, dl
xor al, cl
mov byte [esp + 0xdd], al
mov al, byte [esp + 0xdd]
mov dl, byte [esp + 0xe0]
mov ah, byte [esp + 0xdf]
mov cl, byte [esp + 0xde]
or cl, ah
xor cl, 0xff
or dl, 1
and cl, dl
or al, cl
mov byte [esp + 0xdc], al
mov al, byte [esp + 0xdc]
test al, 1
jne 0x10038feb
jmp 0x1003976a
mov eax, dword [0x10065310]
mov dword [eax - 0x3edd26b7], 1
mov eax, dword [0x10066d08]
mov dword [esp + 0xd0], eax
mov ecx, dword [0x10066d04]
mov dword [esp + 0xd4], ecx
add eax, 0x551e10ff
sub eax, 1
sub eax, 0x551e10ff
mov dword [esp + 0xd8], eax
mov ecx, dword [esp + 0xd8]
mov eax, dword [esp + 0xd0]
imul eax, ecx
mov dword [esp + 0xcc], eax
mov eax, dword [esp + 0xcc]
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0xcb], al
mov eax, dword [esp + 0xd4]
cmp eax, 0xa
setl al
mov byte [esp + 0xca], al
mov cl, byte [esp + 0xca]
mov al, byte [esp + 0xcb]
mov dl, al
and dl, cl
mov byte [esp + 0xc8], dl
xor al, cl
mov byte [esp + 0xc9], al
mov cl, byte [esp + 0xc9]
mov al, byte [esp + 0xc8]
or al, cl
test al, 1
jne 0x100390a9
jmp 0x1003976a
jmp 0x100390ae
mov eax, dword [0x10066d08]
mov dword [esp + 0xbc], eax
mov ecx, dword [0x10066d04]
mov dword [esp + 0xc0], ecx
sub eax, 0x5c004966
sub eax, 1
add eax, 0x5c004966
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0xc0]
mov edx, dword [esp + 0xc4]
mov ecx, dword [esp + 0xbc]
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
mov byte [esp + 0xba], cl
cmp eax, 0xa
setl al
mov byte [esp + 0xbb], al
mov cl, byte [esp + 0xbb]
mov al, byte [esp + 0xba]
and al, cl
mov byte [esp + 0xb9], al
mov al, byte [esp + 0xb9]
mov dl, byte [esp + 0xbb]
mov cl, byte [esp + 0xba]
xor cl, dl
or al, cl
mov byte [esp + 0xb8], al
mov al, byte [esp + 0xb8]
test al, 1
jne 0x1003915b
jmp 0x100396b6
mov eax, dword [0x10066d08]
mov dword [esp + 0xb0], eax
mov eax, dword [0x10066d04]
mov dword [esp + 0xb4], eax
mov eax, dword [esp + 0xb0]
xor edx, edx
sub edx, 1
mov ecx, eax
add ecx, edx
imul eax, ecx
mov dword [esp + 0xac], eax
mov ecx, dword [esp + 0xb4]
mov eax, dword [esp + 0xac]
and eax, 1
cmp eax, 0
sete ah
cmp ecx, 0xa
setl dl
mov al, ah
xor al, 0xff
mov byte [esp + 0xa8], al
mov cl, dl
xor cl, 0xff
mov byte [esp + 0xa9], cl
mov ch, 1
xor ch, 0
mov byte [esp + 0xaa], ch
and al, 0
and ah, ch
and cl, 0
and dl, ch
or al, ah
or cl, dl
xor al, cl
mov byte [esp + 0xab], al
mov cl, byte [esp + 0xa9]
mov al, byte [esp + 0xa8]
or al, cl
xor al, 0xff
mov byte [esp + 0xa7], al
mov al, byte [esp + 0xab]
mov cl, byte [esp + 0xa7]
mov dl, byte [esp + 0xaa]
or dl, 0
and cl, dl
or al, cl
mov byte [esp + 0xa6], al
mov al, byte [esp + 0xa6]
test al, 1
jne 0x10039233
jmp 0x1003978f
mov eax, dword [0x10066d08]
mov ecx, dword [0x10066d04]
mov dword [esp + 0x9c], ecx
mov ecx, eax
add ecx, 0x26e6f298
sub ecx, 1
sub ecx, 0x26e6f298
imul eax, ecx
and eax, 1
mov dword [esp + 0xa0], eax
mov eax, dword [esp + 0x9c]
mov ecx, dword [esp + 0xa0]
cmp ecx, 0
sete cl
mov byte [esp + 0x98], cl
cmp eax, 0xa
setl al
mov byte [esp + 0x99], al
xor cl, 0xff
mov byte [esp + 0x9a], cl
xor al, 0xff
mov byte [esp + 0x9b], al
mov al, byte [esp + 0x98]
mov dl, byte [esp + 0x9a]
mov cl, 1
xor cl, 1
mov byte [esp + 0x95], cl
and dl, 0xff
mov byte [esp + 0x96], dl
and al, cl
mov byte [esp + 0x97], al
mov cl, byte [esp + 0x9b]
mov al, byte [esp + 0x9a]
mov dh, byte [esp + 0x97]
mov dl, byte [esp + 0x96]
mov bl, byte [esp + 0x95]
mov ch, byte [esp + 0x99]
mov ah, cl
and ah, 0xff
and ch, bl
or dl, dh
or ah, ch
xor dl, ah
mov byte [esp + 0x93], dl
or al, cl
mov byte [esp + 0x94], al
mov al, byte [esp + 0x93]
mov dl, byte [esp + 0x95]
mov cl, byte [esp + 0x94]
xor cl, 0xff
or dl, 1
and cl, dl
or al, cl
mov byte [esp + 0x92], al
mov al, byte [esp + 0x92]
test al, 1
jne 0x1003934c
jmp 0x10039846
mov eax, dword [0x10066d08]
mov dword [esp + 0x88], eax
mov eax, dword [0x10066d04]
mov dword [esp + 0x8c], eax
mov eax, dword [esp + 0x88]
mov ecx, eax
sub ecx, 0x682faa66
sub ecx, 1
add ecx, 0x682faa66
imul eax, ecx
and eax, 1
mov dword [esp + 0x84], eax
mov ecx, dword [esp + 0x8c]
mov eax, dword [esp + 0x84]
cmp eax, 0
sete al
mov byte [esp + 0x81], al
cmp ecx, 0xa
setl cl
mov byte [esp + 0x82], cl
and al, cl
mov byte [esp + 0x83], al
mov cl, byte [esp + 0x82]
mov al, byte [esp + 0x81]
xor al, cl
mov byte [esp + 0x80], al
mov cl, byte [esp + 0x80]
mov al, byte [esp + 0x83]
or al, cl
mov byte [esp + 0x7f], al
mov al, byte [esp + 0x7f]
test al, 1
jne 0x100393f6
jmp 0x10039846
mov eax, dword [0x10066d08]
mov dword [esp + 0x78], eax
mov eax, dword [0x10066d04]
mov dword [esp + 0x74], eax
mov eax, dword [esp + 0x78]
mov ecx, eax
sub ecx, 0x5dd0016a
sub ecx, 1
add ecx, 0x5dd0016a
imul eax, ecx
and eax, 1
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0x74]
mov eax, dword [esp + 0x70]
cmp eax, 0
sete al
mov byte [esp + 0x6a], al
cmp ecx, 0xa
setl cl
mov byte [esp + 0x6b], cl
xor al, 0xff
mov byte [esp + 0x6c], al
xor cl, 0xff
mov byte [esp + 0x6d], cl
mov cl, 1
xor cl, 0
mov byte [esp + 0x6e], cl
and al, 0
mov byte [esp + 0x6f], al
mov cl, byte [esp + 0x6e]
mov dl, byte [esp + 0x6d]
mov al, byte [esp + 0x6c]
mov ah, byte [esp + 0x6f]
mov dh, byte [esp + 0x6b]
mov bl, byte [esp + 0x6a]
and bl, cl
mov ch, dl
and ch, 0
and dh, cl
or ah, bl
or ch, dh
xor ah, ch
mov byte [esp + 0x68], ah
or al, dl
xor al, 0xff
or cl, 0
and al, cl
mov byte [esp + 0x69], al
mov cl, byte [esp + 0x69]
mov al, byte [esp + 0x68]
or al, cl
test al, 1
jne 0x100394ae
jmp 0x1003978f
mov eax, dword [0x10066d08]
mov dword [esp + 0x64], eax
mov eax, dword [esp + 0x64]
mov ecx, dword [0x10066d04]
mov dword [esp + 0x5c], ecx
sub eax, 0xd3666d17
sub eax, 1
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x60]
add eax, 0xd3666d17
mov dword [esp + 0x58], eax
mov ecx, dword [esp + 0x58]
mov eax, dword [esp + 0x64]
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0x57], al
mov cl, byte [esp + 0x57]
mov eax, dword [esp + 0x5c]
cmp eax, 0xa
setl dl
mov al, cl
and al, dl
xor cl, dl
or al, cl
mov byte [esp + 0x56], al
mov al, byte [esp + 0x56]
test al, 1
jne 0x10039521
jmp 0x1003984b
mov eax, dword [0x10066d08]
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x50]
mov ecx, dword [0x10066d04]
mov dword [esp + 0x48], ecx
sub eax, 0x7b832c93
mov dword [esp + 0x4c], eax
mov eax, dword [esp + 0x48]
mov ecx, dword [esp + 0x50]
mov edx, dword [esp + 0x4c]
sub edx, 1
add edx, 0x7b832c93
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
mov byte [esp + 0x43], cl
cmp eax, 0xa
setl al
mov byte [esp + 0x44], al
xor cl, 0xff
mov byte [esp + 0x45], cl
xor al, 0xff
mov byte [esp + 0x46], al
mov al, 1
xor al, 1
mov byte [esp + 0x47], al
mov al, byte [esp + 0x45]
and al, 0xff
mov byte [esp + 0x42], al
mov dl, byte [esp + 0x47]
mov ah, byte [esp + 0x46]
mov cl, byte [esp + 0x45]
mov al, byte [esp + 0x42]
mov dh, byte [esp + 0x44]
mov bl, byte [esp + 0x43]
and bl, dl
mov ch, ah
and ch, 0xff
and dh, dl
or al, bl
or ch, dh
xor al, ch
or cl, ah
xor cl, 0xff
or dl, 1
and cl, dl
or al, cl
mov byte [esp + 0x41], al
mov al, byte [esp + 0x41]
test al, 1
jne 0x100395d7
jmp 0x1003984b
mov eax, dword [0x10066d08]
mov ecx, dword [0x10066d04]
mov dword [esp + 0x38], ecx
mov ecx, eax
sub ecx, 0xc28d2e31
sub ecx, 1
add ecx, 0xc28d2e31
imul eax, ecx
and eax, 1
mov dword [esp + 0x3c], eax
mov ecx, dword [esp + 0x38]
mov eax, dword [esp + 0x3c]
cmp eax, 0
sete al
mov byte [esp + 0x32], al
cmp ecx, 0xa
setl cl
mov byte [esp + 0x33], cl
xor al, 0xff
mov byte [esp + 0x34], al
xor cl, 0xff
mov byte [esp + 0x35], cl
mov cl, 1
xor cl, 0
mov byte [esp + 0x36], cl
and al, 0
mov byte [esp + 0x37], al
mov dl, byte [esp + 0x37]
mov ch, byte [esp + 0x36]
mov cl, byte [esp + 0x33]
mov al, byte [esp + 0x35]
mov ah, byte [esp + 0x32]
and ah, ch
and al, 0
and cl, ch
or dl, ah
mov byte [esp + 0x30], dl
or al, cl
mov byte [esp + 0x31], al
mov al, byte [esp + 0x36]
mov dl, byte [esp + 0x35]
mov cl, byte [esp + 0x34]
mov ch, byte [esp + 0x31]
mov ah, byte [esp + 0x30]
xor ah, ch
mov byte [esp + 0x2d], ah
or cl, dl
xor cl, 0xff
mov byte [esp + 0x2e], cl
or al, 0
mov byte [esp + 0x2f], al
mov al, byte [esp + 0x2d]
mov dl, byte [esp + 0x2f]
mov cl, byte [esp + 0x2e]
and cl, dl
or al, cl
mov byte [esp + 0x2c], al
mov al, byte [esp + 0x2c]
test al, 1
jne 0x100396ad
jmp 0x100396b6
add esp, 0x1d0
pop esi
pop ebx
ret
jmp 0x1003915b
mov eax, dword [0x10065310]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x28]
add eax, 0xc122d949
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x24]
mov eax, dword [eax]
jmp 0x100388b0
mov eax, dword [esp + 0x130]
mov ecx, dword [esp + 0x164]
mov cl, byte [ecx + eax]
mov byte [esp + 0x23], cl
xor ecx, ecx
sub ecx, 0x1d
add eax, ecx
mov eax, dword [esp + 0x130]
add eax, 0x4e12328f
mov dword [esp + 0x1c], eax
mov eax, dword [esp + 0x1c]
sub eax, 0x1d
sub eax, 0x4e12328f
mov cl, byte [esp + 0x23]
mov eax, dword [esp + 0x130]
mov esi, 0x1d
xor edx, edx
div esi
mov eax, dword [esp + 0x1bc]
mov al, byte [eax + edx]
mov byte [esp + 0x1b], al
xor eax, eax
sub al, cl
add al, 0
mov eax, dword [esp + 0x1c0]
mov ecx, dword [esp + 0x130]
mov dh, byte [esp + 0x23]
mov bl, byte [esp + 0x1b]
mov bh, dh
xor bh, 0xff
mov dl, bl
and dl, bh
xor bl, 0xff
and dh, bl
or dl, dh
mov byte [eax + ecx], dl
jmp 0x10038b39
mov eax, dword [0x10065310]
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x14]
add eax, 0xc122d949
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x10]
mov dword [eax], 1
jmp 0x10038feb
jmp 0x10039233
jmp 0x10038705
mov eax, dword [0x10065310]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0xc122d949
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
mov eax, dword [eax]
jmp 0x1003895e
mov eax, dword [esp + 0x130]
mov ecx, dword [esp + 0x164]
mov cl, byte [ecx + eax]
mov byte [esp + 6], cl
mov ecx, 0x1d
xor edx, edx
div ecx
mov eax, dword [esp + 0x1bc]
mov al, byte [eax + edx]
mov byte [esp + 7], al
mov al, byte [esp + 6]
add al, 0xc0
mov byte [esp + 5], al
mov cl, byte [esp + 7]
mov al, byte [esp + 5]
sub al, cl
mov al, byte [esp + 6]
xor al, 0xff
and al, 0x3b
mov byte [esp + 3], al
mov al, 0xff
xor al, 0x3b
mov byte [esp + 4], al
mov ecx, dword [esp + 0x130]
mov dl, byte [esp + 3]
mov al, byte [esp + 4]
mov bl, byte [esp + 7]
mov bh, byte [esp + 6]
and bh, al
mov dh, bl
xor dh, 0xff
and dh, 0x3b
and bl, al
mov eax, dword [esp + 0x1c0]
or dl, bh
or dh, bl
xor dl, dh
mov byte [eax + ecx], dl
jmp 0x10038c28
jmp 0x1003934c
jmp 0x10039521