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

Disassembly:
push ebx
push edi
push esi
sub esp, 0x150
mov eax, dword [esp + 0x164]
mov dword [esp + 0x144], eax
mov ecx, dword [esp + 0x160]
mov dword [esp + 0x148], ecx
add eax, 0x19
mov dword [esp + 0x14c], eax
mov eax, dword [0x1006730c]
mov dword [esp + 0x140], eax
mov eax, dword [esp + 0x140]
add eax, 0x9673e5de
mov dword [esp + 0x13c], eax
mov eax, dword [esp + 0x13c]
mov eax, dword [eax]
mov dword [esp + 0x138], eax
mov eax, dword [esp + 0x138]
cmp eax, 1
sete al
mov byte [esp + 0x137], al
mov cl, byte [esp + 0x137]
xor eax, eax
test cl, 1
mov dword [esp + 0x130], eax
jne 0x1003eb67
jmp 0x1003e2a0
mov eax, dword [esp + 0x130]
mov dword [esp + 0x12c], eax
mov ecx, dword [0x10068d00]
mov eax, dword [0x10068cfc]
xor esi, esi
sub esi, 1
mov edx, ecx
add edx, esi
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete bl
cmp eax, 0xa
setl dh
mov cl, bl
xor cl, 0xff
mov ah, dh
xor ah, 0xff
mov dl, 1
xor dl, 0
mov al, cl
and al, 0
and bl, dl
mov ch, ah
and ch, 0
and dh, dl
or al, bl
or ch, dh
xor al, ch
or cl, ah
xor cl, 0xff
or dl, 0
and cl, dl
or al, cl
test al, 1
jne 0x1003e30f
jmp 0x1003edfe
mov ecx, dword [esp + 0x12c]
mov eax, dword [esp + 0x14c]
add eax, ecx
mov dword [esp + 0x128], eax
mov eax, dword [esp + 0x12c]
mov ecx, dword [esp + 0x128]
mov cl, byte [ecx]
mov esi, 0x19
xor edx, edx
div esi
mov eax, dword [esp + 0x144]
mov al, byte [eax + edx]
mov byte [esp + 0x123], al
mov dl, cl
xor dl, 0xff
and dl, 0xe2
mov byte [esp + 0x124], dl
mov dl, 0xff
xor dl, 0xe2
mov byte [esp + 0x125], dl
and cl, dl
mov byte [esp + 0x126], cl
xor al, 0xff
and al, 0xe2
mov byte [esp + 0x127], al
mov ecx, dword [esp + 0x148]
mov dh, byte [esp + 0x127]
mov bh, byte [esp + 0x126]
mov dl, byte [esp + 0x124]
mov al, byte [esp + 0x125]
mov bl, byte [esp + 0x123]
and bl, al
mov eax, dword [esp + 0x12c]
or dl, bh
or dh, bl
xor dl, dh
mov byte [ecx + eax], dl
sub eax, 0x44bd0ef0
add eax, 1
add eax, 0x44bd0ef0
mov dword [esp + 0x10c], eax
cmp eax, 0xb
sete al
mov byte [esp + 0x113], al
mov eax, dword [0x10068d00]
mov dword [esp + 0x114], eax
mov ecx, dword [0x10068cfc]
mov dword [esp + 0x118], ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [esp + 0x11c], eax
mov ecx, dword [esp + 0x118]
mov edx, dword [esp + 0x11c]
mov eax, dword [esp + 0x114]
imul eax, edx
and eax, 1
cmp eax, 0
sete ah
cmp ecx, 0xa
setl cl
mov dl, ah
xor dl, 0xff
mov byte [esp + 0x107], dl
mov al, cl
xor al, 0xff
mov byte [esp + 0x108], al
mov ch, 1
xor ch, 0
mov byte [esp + 0x109], ch
and dl, 0
and ah, ch
and al, 0
and cl, ch
or dl, ah
mov byte [esp + 0x10a], dl
or al, cl
mov byte [esp + 0x10b], al
mov cl, byte [esp + 0x108]
mov al, byte [esp + 0x107]
mov ah, byte [esp + 0x10b]
mov dl, byte [esp + 0x10a]
xor dl, ah
mov byte [esp + 0x105], dl
or al, cl
mov byte [esp + 0x106], al
mov al, byte [esp + 0x105]
mov dl, byte [esp + 0x109]
mov cl, byte [esp + 0x106]
xor cl, 0xff
or dl, 0
and cl, dl
or al, cl
test al, 1
jne 0x1003e4c2
jmp 0x1003edfe
mov eax, dword [esp + 0x10c]
mov cl, byte [esp + 0x113]
test cl, 1
mov dword [esp + 0x130], eax
jne 0x1003e4e5
jmp 0x1003e2a0
mov eax, dword [0x10068d00]
mov dword [esp + 0x100], eax
mov eax, dword [0x10068cfc]
mov dword [esp + 0xfc], eax
mov eax, dword [esp + 0x100]
sub eax, 0x7f3262c1
sub eax, 1
mov dword [esp + 0xf8], eax
mov eax, dword [esp + 0xfc]
mov ecx, dword [esp + 0x100]
mov edx, dword [esp + 0xf8]
add edx, 0x7f3262c1
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
mov byte [esp + 0xf6], cl
cmp eax, 0xa
setl al
mov byte [esp + 0xf7], al
mov al, byte [esp + 0xf7]
mov cl, byte [esp + 0xf6]
xor cl, 0xff
mov byte [esp + 0xf4], cl
xor al, 0xff
mov byte [esp + 0xf5], al
mov ah, byte [esp + 0xf5]
mov cl, byte [esp + 0xf4]
mov dh, byte [esp + 0xf7]
mov bl, byte [esp + 0xf6]
mov dl, 1
xor dl, 1
mov al, cl
and al, 0xff
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
test al, 1
jne 0x1003e5bc
jmp 0x1003ee81
mov eax, dword [0x10068d00]
mov dword [esp + 0xec], eax
mov eax, dword [0x10068cfc]
mov dword [esp + 0xf0], eax
mov eax, dword [esp + 0xec]
sub eax, 0x163dfab5
mov dword [esp + 0xe8], eax
mov eax, dword [esp + 0xe8]
sub eax, 1
mov dword [esp + 0xe4], eax
mov eax, dword [esp + 0xec]
mov ecx, dword [esp + 0xe4]
add ecx, 0x163dfab5
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0xe3], al
mov al, byte [esp + 0xe3]
mov ecx, dword [esp + 0xf0]
cmp ecx, 0xa
setl cl
mov byte [esp + 0xe1], cl
and al, cl
mov byte [esp + 0xe2], al
mov al, byte [esp + 0xe2]
mov dl, byte [esp + 0xe1]
mov cl, byte [esp + 0xe3]
xor cl, dl
or al, cl
test al, 1
jne 0x1003e669
jmp 0x1003eed3
mov eax, dword [0x10068d00]
mov ecx, dword [0x10068cfc]
mov dword [esp + 0xdc], ecx
mov ecx, eax
add ecx, 0x9e8b082a
sub ecx, 1
sub ecx, 0x9e8b082a
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0xe0], al
mov eax, dword [esp + 0xdc]
cmp eax, 0xa
setl al
mov byte [esp + 0xdb], al
mov al, byte [esp + 0xe0]
xor al, 0xff
mov byte [esp + 0xda], al
mov cl, byte [esp + 0xe0]
mov ah, byte [esp + 0xda]
mov al, byte [esp + 0xdb]
xor al, 0xff
mov byte [esp + 0xd5], al
mov dl, 1
xor dl, 0
mov byte [esp + 0xd6], dl
and ah, 0
mov byte [esp + 0xd7], ah
and cl, dl
mov byte [esp + 0xd8], cl
and al, 0
mov byte [esp + 0xd9], al
mov cl, byte [esp + 0xd9]
mov ah, byte [esp + 0xd8]
mov al, byte [esp + 0xd7]
mov ch, byte [esp + 0xd6]
mov dl, byte [esp + 0xdb]
and dl, ch
or al, ah
or cl, dl
xor al, cl
mov byte [esp + 0xd4], al
mov al, byte [esp + 0xd4]
mov dl, byte [esp + 0xd6]
mov ah, byte [esp + 0xd5]
mov cl, byte [esp + 0xda]
or cl, ah
xor cl, 0xff
or dl, 0
and cl, dl
or al, cl
test al, 1
jne 0x1003e770
jmp 0x1003eed3
mov eax, dword [0x10068d00]
mov dword [esp + 0xc8], eax
mov ecx, dword [0x10068cfc]
mov dword [esp + 0xcc], ecx
sub eax, 0xe6044f75
sub eax, 1
add eax, 0xe6044f75
mov dword [esp + 0xd0], eax
mov ecx, dword [esp + 0xd0]
mov eax, dword [esp + 0xc8]
imul eax, ecx
mov dword [esp + 0xc4], eax
mov eax, dword [esp + 0xc4]
and eax, 1
mov dword [esp + 0xc0], eax
mov eax, dword [esp + 0xcc]
mov ecx, dword [esp + 0xc0]
cmp ecx, 0
sete cl
mov byte [esp + 0xbe], cl
cmp eax, 0xa
setl al
mov byte [esp + 0xbf], al
mov cl, byte [esp + 0xbf]
mov al, byte [esp + 0xbe]
mov dl, al
and dl, cl
mov byte [esp + 0xbc], dl
xor al, cl
mov byte [esp + 0xbd], al
mov cl, byte [esp + 0xbd]
mov al, byte [esp + 0xbc]
or al, cl
test al, 1
jne 0x1003e82d
jmp 0x1003eeab
mov eax, dword [0x1006730c]
add eax, 0x9673e5de
mov dword [esp + 0xb8], eax
mov eax, dword [esp + 0xb8]
mov dword [eax], 1
mov eax, dword [0x10068d00]
mov dword [esp + 0xac], eax
mov ecx, dword [0x10068cfc]
mov dword [esp + 0xb0], ecx
add eax, 0xb1c6fc40
sub eax, 1
sub eax, 0xb1c6fc40
mov dword [esp + 0xb4], eax
mov ecx, dword [esp + 0xb4]
mov eax, dword [esp + 0xac]
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0xab], al
mov cl, byte [esp + 0xab]
mov eax, dword [esp + 0xb0]
cmp eax, 0xa
setl dl
mov al, cl
and al, dl
xor cl, dl
or al, cl
mov byte [esp + 0xaa], al
mov al, byte [esp + 0xaa]
test al, 1
jne 0x1003e8d0
jmp 0x1003eeab
mov eax, dword [0x10068d00]
mov dword [esp + 0xa0], eax
mov eax, dword [0x10068cfc]
mov dword [esp + 0xa4], eax
mov eax, dword [esp + 0xa0]
add eax, 0x80b1bf5e
mov dword [esp + 0x9c], eax
mov eax, dword [esp + 0xa0]
mov ecx, dword [esp + 0x9c]
sub ecx, 1
sub ecx, 0x80b1bf5e
imul eax, ecx
and eax, 1
mov dword [esp + 0x98], eax
mov eax, dword [esp + 0xa4]
mov ecx, dword [esp + 0x98]
cmp ecx, 0
sete cl
mov byte [esp + 0x96], cl
cmp eax, 0xa
setl al
mov byte [esp + 0x97], al
mov dl, byte [esp + 0x97]
mov cl, byte [esp + 0x96]
mov al, cl
and al, dl
xor cl, dl
or al, cl
mov byte [esp + 0x95], al
mov al, byte [esp + 0x95]
test al, 1
jne 0x1003e978
jmp 0x1003ee81
mov eax, dword [0x10068d00]
mov ecx, dword [0x10068cfc]
mov dword [esp + 0x8c], ecx
xor edx, edx
sub edx, 1
mov ecx, eax
add ecx, edx
imul eax, ecx
mov dword [esp + 0x90], eax
mov eax, dword [esp + 0x90]
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0x8b], al
mov al, byte [esp + 0x8b]
mov ecx, dword [esp + 0x8c]
cmp ecx, 0xa
setl cl
mov byte [esp + 0x86], cl
xor al, 0xff
mov byte [esp + 0x87], al
xor cl, 0xff
mov byte [esp + 0x88], cl
mov cl, 1
xor cl, 1
mov byte [esp + 0x89], cl
and al, 0xff
mov byte [esp + 0x8a], al
mov cl, byte [esp + 0x89]
mov al, byte [esp + 0x86]
mov dl, byte [esp + 0x88]
mov ah, byte [esp + 0x8b]
and ah, cl
mov byte [esp + 0x83], ah
and dl, 0xff
mov byte [esp + 0x84], dl
and al, cl
mov byte [esp + 0x85], al
mov cl, byte [esp + 0x85]
mov al, byte [esp + 0x84]
mov ah, byte [esp + 0x83]
mov dl, byte [esp + 0x8a]
or dl, ah
mov byte [esp + 0x81], dl
or al, cl
mov byte [esp + 0x82], al
mov dl, byte [esp + 0x89]
mov ah, byte [esp + 0x88]
mov cl, byte [esp + 0x87]
mov ch, byte [esp + 0x82]
mov al, byte [esp + 0x81]
xor al, ch
or cl, ah
xor cl, 0xff
or dl, 1
and cl, dl
or al, cl
test al, 1
jne 0x1003ea9b
jmp 0x1003eece
mov eax, dword [0x10068d00]
mov dword [esp + 0x74], eax
mov ecx, dword [0x10068cfc]
mov dword [esp + 0x78], ecx
add eax, 0x620caa2f
sub eax, 1
sub eax, 0x620caa2f
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x78]
mov edx, dword [esp + 0x7c]
mov ecx, dword [esp + 0x74]
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
mov byte [esp + 0x70], cl
cmp eax, 0xa
setl al
mov byte [esp + 0x71], al
xor cl, 0xff
mov byte [esp + 0x72], cl
xor al, 0xff
mov byte [esp + 0x73], al
mov al, 1
xor al, 1
mov byte [esp + 0x6f], al
mov al, byte [esp + 0x73]
mov dl, byte [esp + 0x6f]
mov cl, byte [esp + 0x70]
mov ah, byte [esp + 0x72]
and ah, 0xff
mov byte [esp + 0x6c], ah
and cl, dl
mov byte [esp + 0x6d], cl
and al, 0xff
mov byte [esp + 0x6e], al
mov dl, byte [esp + 0x6f]
mov ah, byte [esp + 0x73]
mov cl, byte [esp + 0x72]
mov ch, byte [esp + 0x6e]
mov bl, byte [esp + 0x6d]
mov al, byte [esp + 0x6c]
mov dh, byte [esp + 0x71]
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 + 0x6b], al
mov al, byte [esp + 0x6b]
test al, 1
jne 0x1003eb62
jmp 0x1003eece
jmp 0x1003eb67
mov eax, dword [0x10068d00]
mov dword [esp + 0x64], eax
mov eax, dword [0x10068cfc]
mov dword [esp + 0x60], eax
mov eax, dword [esp + 0x64]
sub eax, 0xd7cdb034
sub eax, 1
mov dword [esp + 0x5c], eax
mov ecx, dword [esp + 0x60]
mov eax, dword [esp + 0x64]
mov edx, dword [esp + 0x5c]
add edx, 0xd7cdb034
imul eax, edx
and eax, 1
cmp eax, 0
sete al
mov byte [esp + 0x59], al
cmp ecx, 0xa
setl cl
mov byte [esp + 0x5a], cl
and al, cl
mov byte [esp + 0x5b], al
mov al, byte [esp + 0x5b]
mov dl, byte [esp + 0x5a]
mov cl, byte [esp + 0x59]
xor cl, dl
or al, cl
mov byte [esp + 0x58], al
mov al, byte [esp + 0x58]
test al, 1
jne 0x1003ebe0
jmp 0x1003eea6
mov eax, dword [0x10068d00]
mov dword [esp + 0x54], eax
mov eax, dword [esp + 0x54]
mov ecx, dword [0x10068cfc]
mov dword [esp + 0x4c], ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [esp + 0x50], eax
mov ecx, dword [esp + 0x50]
mov eax, dword [esp + 0x54]
imul eax, ecx
and eax, 1
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x4c]
mov ecx, dword [esp + 0x48]
cmp ecx, 0
sete cl
cmp eax, 0xa
setl al
mov byte [esp + 0x41], al
mov ah, cl
xor ah, 0xff
mov byte [esp + 0x42], ah
xor al, 0xff
mov byte [esp + 0x43], al
mov dl, 1
xor dl, 0
mov byte [esp + 0x44], dl
and ah, 0
mov byte [esp + 0x45], ah
and cl, dl
mov byte [esp + 0x46], cl
and al, 0
mov byte [esp + 0x47], al
mov dl, byte [esp + 0x44]
mov ah, byte [esp + 0x43]
mov cl, byte [esp + 0x42]
mov ch, byte [esp + 0x47]
mov bl, byte [esp + 0x46]
mov al, byte [esp + 0x45]
mov dh, byte [esp + 0x41]
and dh, dl
or al, bl
or ch, dh
xor al, ch
or cl, ah
xor cl, 0xff
or dl, 0
and cl, dl
or al, cl
mov byte [esp + 0x40], al
mov al, byte [esp + 0x40]
test al, 1
jne 0x1003ec9c
jmp 0x1003eed8
mov eax, dword [0x10068d00]
mov dword [esp + 0x34], eax
mov ecx, dword [0x10068cfc]
mov dword [esp + 0x38], ecx
sub eax, 0x987c0bac
mov dword [esp + 0x3c], eax
mov eax, dword [esp + 0x3c]
sub eax, 1
add eax, 0x987c0bac
mov dword [esp + 0x30], eax
mov ecx, dword [esp + 0x30]
mov eax, dword [esp + 0x34]
imul eax, ecx
and eax, 1
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x38]
mov ecx, dword [esp + 0x2c]
cmp ecx, 0
sete cl
mov byte [esp + 0x2a], cl
cmp eax, 0xa
setl al
mov byte [esp + 0x2b], al
mov dl, byte [esp + 0x2b]
mov cl, byte [esp + 0x2a]
mov al, cl
and al, dl
xor cl, dl
or al, cl
mov byte [esp + 0x29], al
mov al, byte [esp + 0x29]
test al, 1
jne 0x1003ed1b
jmp 0x1003eed8
mov eax, dword [0x10068d00]
mov dword [esp + 0x1c], eax
mov ecx, dword [0x10068cfc]
mov dword [esp + 0x20], ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x20]
mov edx, dword [esp + 0x24]
mov ecx, dword [esp + 0x1c]
imul ecx, edx
and ecx, 1
cmp ecx, 0
sete cl
mov byte [esp + 0x1a], cl
cmp eax, 0xa
setl al
mov byte [esp + 0x1b], al
mov al, byte [esp + 0x1b]
mov cl, byte [esp + 0x1a]
xor cl, 0xff
mov byte [esp + 0x17], cl
xor al, 0xff
mov byte [esp + 0x18], al
mov al, 1
xor al, 0
mov byte [esp + 0x19], al
mov cl, byte [esp + 0x19]
mov al, byte [esp + 0x1b]
mov dl, byte [esp + 0x18]
mov ah, byte [esp + 0x1a]
mov ch, byte [esp + 0x17]
and ch, 0
mov byte [esp + 0x13], ch
and ah, cl
mov byte [esp + 0x14], ah
and dl, 0
mov byte [esp + 0x15], dl
and al, cl
mov byte [esp + 0x16], al
mov cl, byte [esp + 0x19]
mov dl, byte [esp + 0x18]
mov al, byte [esp + 0x17]
mov dh, byte [esp + 0x16]
mov ch, byte [esp + 0x15]
mov bl, byte [esp + 0x14]
mov ah, byte [esp + 0x13]
or ah, bl
or ch, dh
xor ah, ch
mov byte [esp + 0x11], ah
or al, dl
xor al, 0xff
or cl, 0
and al, cl
mov byte [esp + 0x12], al
mov cl, byte [esp + 0x12]
mov al, byte [esp + 0x11]
or al, cl
test al, 1
jne 0x1003edf4
jmp 0x1003eea6
add esp, 0x150
pop esi
pop edi
pop ebx
ret
mov ecx, dword [esp + 0x12c]
mov esi, dword [esp + 0x144]
mov eax, dword [esp + 0x14c]
mov al, byte [eax + ecx]
mov byte [esp + 0x10], al
mov edi, 0x19
mov eax, ecx
xor edx, edx
div edi
mov eax, dword [esp + 0x148]
mov edi, edx
mov dh, byte [esp + 0x10]
mov bl, byte [esi + edi]
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
mov eax, dword [esp + 0x12c]
add eax, 0x3987faeb
mov ecx, dword [esp + 0x12c]
xor eax, eax
sub eax, ecx
add eax, 0
add eax, 0x2013a71c
add eax, 1
mov ecx, dword [esp + 0x12c]
xor eax, eax
sub eax, ecx
xor ecx, ecx
sub ecx, 1
add eax, ecx
jmp 0x1003e30f
mov eax, dword [0x1006730c]
mov dword [esp + 0xc], eax
mov eax, dword [esp + 0xc]
add eax, 0x9673e5de
mov dword [esp + 8], eax
mov eax, dword [esp + 8]
mov dword [eax], 1
jmp 0x1003e5bc
jmp 0x1003ebe0
mov eax, dword [0x1006730c]
mov dword [esp + 4], eax
mov eax, dword [esp + 4]
add eax, 0x9673e5de
mov dword [esp], eax
mov eax, dword [esp]
mov dword [eax], 1
jmp 0x1003e82d
jmp 0x1003ea9b
jmp 0x1003e669
jmp 0x1003ec9c