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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x258
mov esi, esp
mov eax, dword [ebp + 0x18]
mov edx, dword [ebp + 0x14]
mov edi, dword [ebp + 0x10]
mov ebx, dword [ebp + 0xc]
mov dword [esi + 0x24c], eax
mov eax, dword [ebp + 8]
mov dword [esi + 0x248], eax
mov eax, 0
mov dword [esi + 0x244], eax
mov eax, dword [0x101537c8]
mov dword [esi + 0x240], eax
mov eax, dword [0x101537c4]
mov dword [esi + 0x23c], eax
mov eax, dword [esi + 0x244]
sub eax, 1
mov dword [esi + 0x238], eax
mov eax, dword [esi + 0x240]
mov dword [esi + 0x234], ecx
mov ecx, dword [esi + 0x238]
add eax, ecx
mov ecx, dword [esi + 0x240]
imul ecx, eax
and ecx, 1
cmp ecx, 0
sete al
mov ecx, dword [esi + 0x23c]
cmp ecx, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
mov dword [esi + 0x230], ebx
mov dword [esi + 0x22c], edi
mov dword [esi + 0x228], edx
jne 0x10089274
jmp 0x1008aeae
mov eax, 4
mov dword [esi + 0x224], eax
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x224]
mov dword [esi + 0x220], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x224]
mov dword [esi + 0x21c], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x224]
mov dword [esi + 0x218], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x224]
mov dword [esi + 0x214], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x224]
mov dword [esi + 0x210], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, 0x18
mov dword [esi + 0x20c], eax
mov eax, ecx
mov dword [esi + 0x208], ecx
call fcn.1001fcd0
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x208]
mov dword [esi + 0x204], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x224]
mov dword [esi + 0x200], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x224]
mov dword [esi + 0x1fc], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, 0x80
mov dword [esi + 0x1f8], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x208]
mov dword [esi + 0x1f4], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x208]
mov dword [esi + 0x1f0], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
and eax, 0xfffffff8
mov esp, eax
mov ecx, dword [esi + 0x224]
mov dword [esi + 0x1ec], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x224]
mov dword [esi + 0x1e8], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x220]
mov edx, dword [esi + 0x24c]
mov dword [ecx], edx
mov edi, dword [esi + 0x21c]
mov ebx, dword [esi + 0x228]
mov dword [edi], ebx
mov ecx, dword [esi + 0x218]
mov edx, dword [esi + 0x22c]
mov dword [ecx], edx
mov ecx, dword [esi + 0x214]
mov edx, dword [esi + 0x230]
mov dword [ecx], edx
mov ecx, dword [esi + 0x210]
mov edx, dword [esi + 0x248]
mov dword [ecx], edx
mov ecx, dword [esi + 0x20c]
mov edx, dword [esi + 0x234]
mov dword [ecx], edx
mov ecx, dword [ecx]
mov edx, dword [esi + 0x210]
mov edx, dword [edx]
mov dword [esi + 0x1e4], ecx
mov ecx, edx
mov dword [esi + 0x1e0], eax
call fcn.1008b3b0
mov cl, 1
mov edx, 0
movzx eax, word [eax]
cmp eax, 0x5c
setne ch
mov eax, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub edx, 1
mov ebx, eax
add ebx, edx
imul eax, ebx
and eax, 1
cmp eax, 0
sete al
cmp edi, 0xa
setl ah
mov dl, al
xor dl, 1
mov dh, ah
xor dh, 1
xor cl, 0
mov bl, dl
and bl, 0
and al, cl
mov bh, dh
and bh, 0
and ah, cl
or bl, al
or bh, ah
xor bl, bh
or dl, dh
xor dl, 1
or cl, 0
and dl, cl
or bl, dl
test bl, 1
mov byte [esi + 0x1df], ch
jne 0x100894b6
jmp 0x1008aeae
mov al, byte [esi + 0x1df]
test al, 1
jne 0x100894c9
jmp 0x100895d2
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xfad07867
sub edx, 1
add edx, 0xfad07867
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10089516
jmp 0x1008af59
mov eax, dword [esi + 0x210]
mov ecx, dword [eax]
call fcn.1008b3b0
mov dl, 1
movzx eax, word [eax]
cmp eax, 0x2f
setne dh
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edi, eax
sub edi, 0x79141ef5
sub edi, 1
add edi, 0x79141ef5
imul eax, edi
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
xor al, 1
mov ah, bh
xor ah, 1
xor dl, 0
mov cl, al
and cl, 0
and bl, dl
mov ch, ah
and ch, 0
and bh, dl
or cl, bl
or ch, bh
xor cl, ch
or al, ah
xor al, 1
or dl, 0
and al, dl
or cl, al
test cl, 1
mov byte [esi + 0x1de], dh
jne 0x100895a7
jmp 0x1008af59
mov al, byte [esi + 0x1de]
test al, 1
jne 0x100895ba
jmp 0x100895d2
mov eax, dword [esi + 0x210]
mov ecx, dword [eax]
sub esp, 4
mov edx, esp
mov dword [edx], 0x5c
call fcn.10013890
mov eax, dword [esi + 0x210]
mov ecx, dword [eax]
mov edx, dword [eax]
mov dword [esi + 0x1d8], ecx
mov ecx, edx
call fcn.100dfab0
mov ecx, 0
sub ecx, 1
add eax, ecx
sub esp, 0xc
mov ecx, esp
mov dword [ecx + 8], eax
mov eax, dword [esi + 0x204]
mov dword [ecx], eax
mov dword [ecx + 4], 0
mov ecx, dword [esi + 0x1d8]
call fcn.100f3410
mov ecx, dword [esi + 0x204]
call fcn.100c6280
sub esp, 4
mov ecx, esp
mov dword [ecx], eax
mov ecx, dword [esi + 0x200]
call fcn.1002cf80
mov dword [esi + 0x1d4], eax
sub esp, 4
mov eax, dword [esi + 0x200]
mov dword [esp], eax
call fcn.100f6440
add esp, 4
mov byte [esi + 0x1d3], al
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xc7b67856
sub edi, 1
sub edi, 0xc7b67856
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x100896cb
jmp 0x1008af6e
mov ecx, dword [esi + 0x200]
call fcn.1009a620
mov ecx, 0
mov eax, dword [0x1014fc58]
mov edx, dword [esi + 0x218]
mov edi, dword [edx]
mov ebx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub ecx, 1
mov dword [esi + 0x1cc], eax
mov eax, ebx
add eax, ecx
imul ebx, eax
and ebx, 1
cmp ebx, 0
sete al
cmp edx, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
mov dword [esi + 0x1c8], edi
jne 0x1008973b
jmp 0x1008af6e
sub esp, 4
mov eax, esp
mov ecx, dword [esi + 0x1c8]
mov dword [eax], ecx
mov eax, dword [esi + 0x1cc]
call eax
mov dword [esi + 0x1c4], eax
mov eax, dword [0x10151438]
mov ecx, dword [esi + 0x218]
mov edx, dword [ecx]
add edx, 0x10
sub esp, 4
mov edi, esp
mov dword [edi], edx
call eax
mov dword [esi + 0x1c0], eax
mov eax, 0
mov ecx, 0x80
mov edx, dword [esi + 0x1e4]
mov edi, dword [edx]
mov ebx, dword [esi + 0x218]
mov edx, dword [ebx]
mov ebx, dword [edx]
mov dword [edi + 0x4c], ebx
mov ebx, dword [edx + 4]
mov dword [edi + 0x50], ebx
mov ebx, dword [edx + 8]
mov dword [edi + 0x54], ebx
mov edx, dword [edx + 0xc]
mov dword [edi + 0x58], edx
mov edx, dword [esi + 0x1f4]
sub esp, 0xc
mov dword [esp], edx
mov dword [esp + 4], 0
mov dword [esp + 8], 0x80
mov dword [esi + 0x1bc], eax
mov dword [esi + 0x1b8], ecx
call fcn.10020350
add esp, 0xc
mov eax, dword [0x10150390]
mov ecx, dword [esi + 0x218]
mov edx, dword [ecx]
sub esp, 0xc
mov edi, esp
mov ebx, dword [esi + 0x1f4]
mov dword [edi + 4], ebx
mov dword [edi], edx
mov dword [edi + 8], 0x40
call eax
mov dword [esi + 0x1b4], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x8cdcc453
sub edx, 1
sub edx, 0x8cdcc453
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10089852
jmp 0x1008af7e
mov eax, 0
mov ecx, dword [esi + 0x210]
mov ecx, dword [ecx]
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub eax, 1
mov ebx, edx
add ebx, eax
imul edx, ebx
and edx, 1
cmp edx, 0
sete al
cmp edi, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov dword [esi + 0x1b0], ecx
jne 0x100898ab
jmp 0x1008af7e
sub esp, 4
mov eax, esp
mov ecx, dword [esi + 0x1f4]
mov dword [eax], ecx
mov ecx, dword [esi + 0x1b0]
call fcn.10052ed0
mov dword [esi + 0x1ac], eax
lea eax, [0x1014f7f8]
mov ecx, dword [esi + 0x210]
mov ecx, dword [ecx]
sub esp, 8
mov edx, dword [esi + 0x1ec]
mov dword [esp], edx
mov dword [esp + 4], eax
mov dword [esi + 0x1a8], ecx
call fcn.10065f00
add esp, 8
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0xcc160cb4
sub edi, 1
add edi, 0xcc160cb4
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1008996b
jmp 0x1008af83
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x97946f57
sub edx, 1
sub edx, 0x97946f57
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x100899b8
jmp 0x1008af83
sub esp, 8
mov eax, dword [esi + 0x1f0]
mov dword [esp], eax
mov ecx, dword [esi + 0x1ec]
mov dword [esp + 4], ecx
call fcn.100d2b10
add esp, 8
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10089a20
jmp 0x1008af88
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xfe9c8481
sub edx, 1
sub edx, 0xfe9c8481
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10089a6d
jmp 0x1008af88
sub esp, 4
mov eax, esp
mov ecx, dword [esi + 0x1f0]
mov dword [eax], ecx
mov ecx, dword [esi + 0x1a8]
call fcn.1007c940
mov dword [esi + 0x1a4], eax
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10089ad5
jmp 0x1008af8d
mov ecx, dword [esi + 0x1f0]
call fcn.1009a620
mov ecx, dword [esi + 0x1ec]
call fcn.1002b850
mov ecx, dword [esi + 0x1e4]
mov eax, dword [ecx + 4]
mov eax, dword [eax + 0x10]
mov edx, dword [esi + 0x210]
mov ecx, dword [edx]
mov dword [esi + 0x1a0], eax
call fcn.100c6280
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x4984eec
sub edi, 1
sub edi, 0x4984eec
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov cl, bl
and cl, bh
xor bl, bh
or cl, bl
test cl, 1
mov dword [esi + 0x19c], eax
jne 0x10089b61
jmp 0x1008af8d
sub esp, 8
mov eax, esp
mov ecx, dword [esi + 0x19c]
mov dword [eax], ecx
mov dword [eax + 4], 0
mov eax, dword [esi + 0x1a0]
call eax
mov dword [esi + 0x198], eax
mov eax, dword [esi + 0x1e8]
mov ecx, dword [esi + 0x198]
mov dword [eax], ecx
mov edx, dword [esi + 0x1e4]
mov edi, dword [edx + 4]
mov edi, dword [edi + 0x28]
mov ebx, dword [esi + 0x21c]
mov eax, dword [ebx]
mov ecx, dword [0x10152164]
mov edx, dword [0x1013f1b8]
mov ebx, dword [esi + 0x1e8]
mov ebx, dword [ebx]
sub esp, 0x18
mov dword [esi + 0x194], eax
mov eax, esp
mov dword [esi + 0x190], ecx
mov ecx, dword [esi + 0x194]
mov dword [eax + 0x14], ecx
mov ecx, dword [esi + 0x190]
mov dword [eax + 8], ecx
mov dword [eax + 4], edx
mov dword [eax], ebx
mov dword [eax + 0x10], 1
mov dword [eax + 0xc], 1
call edi
mov dword [esi + 0x18c], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xc2eb0358
sub edx, 1
add edx, 0xc2eb0358
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x10089c44
jmp 0x1008afb8
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x28]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
add edi, 4
mov ebx, dword [0x1015216c]
mov eax, dword [0x1013f1b8]
mov edx, dword [esi + 0x1e8]
mov edx, dword [edx]
mov dword [esi + 0x188], eax
mov eax, dword [0x101537c8]
mov dword [esi + 0x184], eax
mov eax, dword [0x101537c4]
mov dword [esi + 0x180], eax
mov eax, dword [esi + 0x184]
add eax, 0x7a7ff483
sub eax, 1
sub eax, 0x7a7ff483
mov dword [esi + 0x17c], eax
mov eax, dword [esi + 0x184]
mov dword [esi + 0x178], ecx
mov ecx, dword [esi + 0x17c]
imul eax, ecx
and eax, 1
cmp eax, 0
sete al
mov ecx, dword [esi + 0x180]
cmp ecx, 0xa
setl ah
mov cl, al
and cl, ah
xor al, ah
or cl, al
test cl, 1
mov dword [esi + 0x174], ebx
mov dword [esi + 0x170], edi
mov dword [esi + 0x16c], edx
jne 0x10089d01
jmp 0x1008afb8
sub esp, 0x18
mov eax, esp
mov ecx, dword [esi + 0x170]
mov dword [eax + 0x14], ecx
mov edx, dword [esi + 0x174]
mov dword [eax + 8], edx
mov edi, dword [esi + 0x188]
mov dword [eax + 4], edi
mov ebx, dword [esi + 0x16c]
mov dword [eax], ebx
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov eax, dword [esi + 0x178]
call eax
mov dword [esi + 0x168], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x28]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
add edi, 8
mov ebx, dword [0x10152168]
mov eax, dword [0x1013f1b8]
mov edx, dword [esi + 0x1e8]
mov edx, dword [edx]
sub esp, 0x18
mov dword [esi + 0x164], eax
mov eax, esp
mov dword [eax + 0x14], edi
mov dword [eax + 8], ebx
mov edi, dword [esi + 0x164]
mov dword [eax + 4], edi
mov dword [eax], edx
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
call ecx
mov dword [esi + 0x160], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x28]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
add edi, 0xc
mov ebx, dword [0x10152164]
mov eax, dword [0x10152170]
mov edx, dword [esi + 0x1e8]
mov edx, dword [edx]
sub esp, 0x18
mov dword [esi + 0x15c], eax
mov eax, esp
mov dword [eax + 0x14], edi
mov dword [eax + 8], ebx
mov edi, dword [esi + 0x15c]
mov dword [eax + 4], edi
mov dword [eax], edx
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
call ecx
mov dword [esi + 0x158], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x28]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
add edi, 0x10
mov ebx, dword [0x10152178]
mov eax, dword [0x10152174]
mov edx, dword [esi + 0x1e8]
mov edx, dword [edx]
sub esp, 0x18
mov dword [esi + 0x154], eax
mov eax, esp
mov dword [eax + 0x14], edi
mov dword [eax + 8], ebx
mov edi, dword [esi + 0x154]
mov dword [eax + 4], edi
mov dword [eax], edx
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
call ecx
mov dword [esi + 0x150], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x28]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
add edi, 0x14
mov ebx, dword [0x10152164]
mov eax, dword [0x1015217c]
mov edx, dword [esi + 0x1e8]
mov edx, dword [edx]
sub esp, 0x18
mov dword [esi + 0x14c], eax
mov eax, esp
mov dword [eax + 0x14], edi
mov dword [eax + 8], ebx
mov edi, dword [esi + 0x14c]
mov dword [eax + 4], edi
mov dword [eax], edx
mov dword [eax + 0x10], 1
mov dword [eax + 0xc], 0
call ecx
mov dword [esi + 0x148], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x28]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
add edi, 0x18
mov ebx, dword [0x10152184]
mov eax, dword [0x10152180]
mov edx, dword [esi + 0x1e8]
mov edx, dword [edx]
sub esp, 0x18
mov dword [esi + 0x144], eax
mov eax, esp
mov dword [eax + 0x14], edi
mov dword [eax + 8], ebx
mov edi, dword [esi + 0x144]
mov dword [eax + 4], edi
mov dword [eax], edx
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
call ecx
mov dword [esi + 0x140], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x28]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
add edi, 0x1c
mov ebx, dword [0x10152188]
mov eax, dword [0x10152180]
mov edx, dword [esi + 0x1e8]
mov edx, dword [edx]
sub esp, 0x18
mov dword [esi + 0x13c], eax
mov eax, esp
mov dword [eax + 0x14], edi
mov dword [eax + 8], ebx
mov edi, dword [esi + 0x13c]
mov dword [eax + 4], edi
mov dword [eax], edx
mov dword [eax + 0x10], 1
mov dword [eax + 0xc], 0
call ecx
mov dword [esi + 0x138], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x28]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
add edi, 0x20
mov ebx, dword [0x10152188]
mov eax, dword [0x1013f1b8]
mov edx, dword [esi + 0x1e8]
mov edx, dword [edx]
sub esp, 0x18
mov dword [esi + 0x134], eax
mov eax, esp
mov dword [eax + 0x14], edi
mov dword [eax + 8], ebx
mov edi, dword [esi + 0x134]
mov dword [eax + 4], edi
mov dword [eax], edx
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 1
call ecx
mov dword [esi + 0x130], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x2c]
mov edx, dword [esi + 0x1e8]
mov edi, dword [edx]
sub esp, 4
mov ebx, esp
mov dword [ebx], edi
call ecx
mov dword [esi + 0x12c], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [0x1013f1c8]
mov edi, dword [esi + 0x1e8]
mov ebx, dword [edi]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ebx
call ecx
mov dword [esi + 0x128], eax
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x133dee21
sub edi, 1
sub edi, 0x133dee21
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 1
mov ch, bh
and ch, 1
and ah, al
mov dl, cl
and dl, 1
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 1
and bh, al
or ch, bh
test ch, 1
jne 0x1008a0a3
jmp 0x1008afce
mov al, 1
mov ecx, dword [esi + 0x220]
mov edx, dword [ecx]
mov edi, dword [esi + 0x128]
mov dword [edx], edi
mov edx, dword [esi + 0x1e4]
mov ebx, dword [edx + 4]
mov ebx, dword [ebx + 0x38]
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0xc0718e85
sub edi, 1
sub edi, 0xc0718e85
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 0
mov dh, ch
and dh, 0
and ah, al
mov byte [esi + 0x127], al
mov al, dl
and al, 0
mov byte [esi + 0x126], al
mov al, byte [esi + 0x127]
and cl, al
or dh, ah
mov ah, byte [esi + 0x126]
or ah, cl
xor dh, ah
or ch, dl
xor ch, 1
or al, 0
and ch, al
or dh, ch
test dh, 1
mov dword [esi + 0x120], ebx
jne 0x1008a152
jmp 0x1008afce
mov eax, 0
sub esp, 4
mov dword [esp], 0
mov dword [esi + 0x11c], eax
call fcn.10020aa8
add esp, 4
mov dword [esi + 0x118], eax
mov eax, 0x3e8
mov ecx, dword [esi + 0x118]
mov dword [esi + 0x114], eax
mov eax, ecx
mov edx, dword [esi + 0x114]
imul edx
mov edi, dword [0x1015218c]
mov ebx, dword [esi + 0x1e8]
mov ecx, dword [ebx]
sub esp, 0x10
mov ebx, esp
mov dword [ebx + 0xc], edx
mov dword [ebx + 8], eax
mov dword [ebx + 4], edi
mov dword [ebx], ecx
mov eax, dword [esi + 0x120]
call eax
mov dword [esi + 0x110], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x3c]
mov edx, dword [eax]
add edx, 0x30
mov dword [esi + 0x10c], ecx
mov ecx, edx
call fcn.100c6280
mov ecx, dword [0x10152190]
mov edx, dword [esi + 0x1e8]
mov edi, dword [edx]
sub esp, 0xc
mov ebx, esp
mov dword [ebx + 8], eax
mov dword [ebx + 4], ecx
mov dword [ebx], edi
mov eax, dword [esi + 0x10c]
call eax
mov dword [esi + 0x108], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x3c]
mov edx, dword [eax]
mov dword [esi + 0x104], ecx
mov ecx, edx
call fcn.100c6280
mov ecx, dword [0x10152164]
mov edx, dword [esi + 0x1e8]
mov edi, dword [edx]
sub esp, 0xc
mov ebx, esp
mov dword [ebx + 8], eax
mov dword [ebx + 4], ecx
mov dword [ebx], edi
mov eax, dword [esi + 0x104]
call eax
mov dword [esi + 0x100], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x40]
mov edx, dword [0x10152194]
mov edi, dword [esi + 0x1e8]
mov ebx, dword [edi]
sub esp, 0xc
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ebx
mov dword [eax + 8], 1
call ecx
mov dword [esi + 0xfc], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x44]
mov edx, dword [esi + 0x218]
mov edi, dword [edx]
mov ebx, dword [0x10152198]
mov eax, dword [esi + 0x1e8]
mov eax, dword [eax]
sub esp, 0x10
mov edx, esp
mov dword [edx + 8], edi
mov dword [edx + 4], ebx
mov dword [edx], eax
mov dword [edx + 0xc], 0x10
call ecx
mov dword [esi + 0xf8], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [0x1013f1cc]
mov edi, dword [esi + 0x1e8]
mov ebx, dword [edi]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ebx
call ecx
mov dword [esi + 0xf4], eax
mov eax, dword [esi + 0x220]
mov ecx, dword [eax]
mov edx, dword [esi + 0xf4]
mov dword [ecx + 4], edx
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x48]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
mov edi, dword [edi + 0xc]
mov ebx, dword [esi + 0x1e8]
mov eax, dword [ebx]
sub esp, 8
mov edx, esp
mov dword [edx + 4], edi
mov dword [edx], eax
call ecx
mov dword [esi + 0xf0], eax
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1008a373
jmp 0x1008afe3
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x4c]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
mov edi, dword [edi + 0xc]
mov ebx, dword [esi + 0x1e8]
mov eax, dword [ebx]
mov edx, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov dword [esi + 0xec], eax
mov eax, edx
sub eax, 0x21a97247
sub eax, 1
add eax, 0x21a97247
imul edx, eax
and edx, 1
cmp edx, 0
sete al
cmp ebx, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov dword [esi + 0xe8], edi
mov dword [esi + 0xe4], ecx
jne 0x1008a3f2
jmp 0x1008afe3
sub esp, 8
mov eax, esp
mov ecx, dword [esi + 0xe8]
mov dword [eax + 4], ecx
mov edx, dword [esi + 0xec]
mov dword [eax], edx
mov eax, dword [esi + 0xe4]
call eax
mov dword [esi + 0xe0], eax
jmp 0x1008a41b
jmp 0x1008a420
jmp 0x1008a425
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x48]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
mov edi, dword [edi + 0x14]
mov ebx, dword [esi + 0x1e8]
mov eax, dword [ebx]
sub esp, 8
mov edx, esp
mov dword [edx + 4], edi
mov dword [edx], eax
call ecx
mov dword [esi + 0xdc], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x4c]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
mov edi, dword [edi + 0x14]
mov ebx, dword [esi + 0x1e8]
mov eax, dword [ebx]
sub esp, 8
mov edx, esp
mov dword [edx + 4], edi
mov dword [edx], eax
call ecx
mov dword [esi + 0xd8], eax
mov al, 1
mov ecx, 0
mov edx, dword [0x101537c8]
mov edi, dword [0x101537c4]
sub ecx, 1
mov ebx, edx
add ebx, ecx
imul edx, ebx
and edx, 1
cmp edx, 0
sete ah
cmp edi, 0xa
setl cl
mov ch, ah
xor ch, 1
mov dl, cl
xor dl, 1
xor al, 0
mov dh, ch
and dh, 0
and ah, al
mov bl, dl
and bl, 0
and cl, al
or dh, ah
or bl, cl
xor dh, bl
or ch, dl
xor ch, 1
or al, 0
and ch, al
or dh, ch
test dh, 1
jne 0x1008a4f8
jmp 0x1008afe8
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xc39e931
sub edx, 1
add edx, 0xc39e931
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1008a545
jmp 0x1008afe8
jmp 0x1008a54a
jmp 0x1008a54f
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x34]
mov edx, dword [esi + 0x220]
mov edi, dword [edx]
mov edi, dword [edi + 4]
mov ebx, dword [esi + 0x1e8]
mov eax, dword [ebx]
sub esp, 8
mov edx, esp
mov dword [edx + 4], edi
mov dword [edx], eax
call ecx
mov dword [esi + 0xd4], eax
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
sub edi, 0x94496808
sub edi, 1
add edi, 0x94496808
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1008a5f6
jmp 0x1008afed
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xcee21124
sub edx, 1
add edx, 0xcee21124
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1008a643
jmp 0x1008afed
jmp 0x1008a648
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x48]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
mov edi, dword [edi + 4]
mov ebx, dword [esi + 0x1e8]
mov eax, dword [ebx]
sub esp, 8
mov edx, esp
mov dword [edx + 4], edi
mov dword [edx], eax
call ecx
mov dword [esi + 0xd0], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x4c]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
mov edi, dword [edi + 4]
mov ebx, dword [esi + 0x1e8]
mov eax, dword [ebx]
sub esp, 8
mov edx, esp
mov dword [edx + 4], edi
mov dword [edx], eax
call ecx
mov dword [esi + 0xcc], eax
jmp 0x1008a6af
jmp 0x1008a6b4
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1008a6fe
jmp 0x1008aff2
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xa313792e
sub edx, 1
add edx, 0xa313792e
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1008a74b
jmp 0x1008aff2
jmp 0x1008a750
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x48]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
mov edi, dword [edi + 8]
mov ebx, dword [esi + 0x1e8]
mov eax, dword [ebx]
sub esp, 8
mov edx, esp
mov dword [edx + 4], edi
mov dword [edx], eax
call ecx
mov dword [esi + 0xc8], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x4c]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
mov edi, dword [edi + 8]
mov ebx, dword [esi + 0x1e8]
mov eax, dword [ebx]
sub esp, 8
mov edx, esp
mov dword [edx + 4], edi
mov dword [edx], eax
call ecx
mov dword [esi + 0xc4], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0x4b052c13
sub edx, 1
add edx, 0x4b052c13
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1008a7ff
jmp 0x1008aff7
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0x4b20e224
sub edx, 1
sub edx, 0x4b20e224
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1008a84c
jmp 0x1008aff7
jmp 0x1008a851
jmp 0x1008a856
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
sub edx, 0xc86d87a0
sub edx, 1
add edx, 0xc86d87a0
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1008a8a3
jmp 0x1008affc
mov al, 1
mov ecx, dword [esi + 0x1e4]
mov edx, dword [ecx + 4]
mov edx, dword [edx + 0x48]
mov edi, dword [esi + 0x21c]
mov ebx, dword [edi]
mov ebx, dword [ebx]
mov ecx, dword [esi + 0x1e8]
mov ecx, dword [ecx]
mov edi, dword [0x101537c8]
mov byte [esi + 0xc3], al
mov eax, dword [0x101537c4]
mov dword [esi + 0xbc], eax
mov eax, edi
sub eax, 0x61e927c2
sub eax, 1
add eax, 0x61e927c2
imul edi, eax
and edi, 1
cmp edi, 0
sete al
mov edi, dword [esi + 0xbc]
cmp edi, 0xa
setl ah
mov byte [esi + 0xbb], al
xor al, 1
mov byte [esi + 0xba], al
mov al, ah
xor al, 1
mov byte [esi + 0xb9], al
mov al, byte [esi + 0xc3]
xor al, 1
mov byte [esi + 0xb8], al
mov al, byte [esi + 0xba]
and al, 1
mov byte [esi + 0xb7], al
mov al, byte [esi + 0xbb]
mov dword [esi + 0xb0], ecx
mov cl, byte [esi + 0xb8]
and al, cl
mov ch, byte [esi + 0xb9]
and ch, 1
and ah, cl
mov cl, byte [esi + 0xb7]
or cl, al
or ch, ah
xor cl, ch
mov al, byte [esi + 0xba]
mov ah, byte [esi + 0xb9]
or al, ah
xor al, 1
mov ch, byte [esi + 0xb8]
or ch, 1
and al, ch
or cl, al
test cl, 1
mov dword [esi + 0xac], ebx
mov dword [esi + 0xa8], edx
jne 0x1008a9a2
jmp 0x1008affc
sub esp, 8
mov eax, esp
mov ecx, dword [esi + 0xac]
mov dword [eax + 4], ecx
mov edx, dword [esi + 0xb0]
mov dword [eax], edx
mov eax, dword [esi + 0xa8]
call eax
mov dword [esi + 0xa4], eax
mov eax, dword [0x101537c8]
mov ecx, dword [0x101537c4]
mov edx, eax
add edx, 0xf791317a
sub edx, 1
sub edx, 0xf791317a
imul eax, edx
and eax, 1
cmp eax, 0
sete bl
cmp ecx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1008aa13
jmp 0x1008b001
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x48]
mov edx, dword [esi + 0x21c]
mov edi, dword [edx]
mov edi, dword [edi + 0x20]
mov ebx, dword [esi + 0x1e8]
mov eax, dword [ebx]
mov edx, dword [0x101537c8]
mov ebx, dword [0x101537c4]
mov dword [esi + 0xa0], eax
mov eax, edx
sub eax, 0x9ff7313c
sub eax, 1
add eax, 0x9ff7313c
imul edx, eax
and edx, 1
cmp edx, 0
sete al
cmp ebx, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov dword [esi + 0x9c], edi
mov dword [esi + 0x98], ecx
jne 0x1008aa92
jmp 0x1008b001
sub esp, 8
mov eax, esp
mov ecx, dword [esi + 0x9c]
mov dword [eax + 4], ecx
mov edx, dword [esi + 0xa0]
mov dword [eax], edx
mov eax, dword [esi + 0x98]
call eax
mov dword [esi + 0x94], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [0x1013f1d0]
mov edi, dword [esi + 0x1e8]
mov ebx, dword [edi]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ebx
call ecx
mov dword [esi + 0x90], eax
mov eax, 0
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
sub eax, 1
mov edi, ecx
add edi, eax
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete bl
cmp edx, 0xa
setl bh
mov al, bl
and al, bh
xor bl, bh
or al, bl
test al, 1
jne 0x1008ab2c
jmp 0x1008b006
mov eax, dword [esi + 0x220]
mov ecx, dword [eax]
mov edx, dword [esi + 0x90]
mov dword [ecx + 8], edx
mov ecx, dword [esi + 0x1e4]
mov edi, dword [ecx + 4]
mov edi, dword [edi + 0x3c]
mov ebx, dword [esi + 0x214]
mov ecx, dword [ebx]
mov dword [esi + 0x8c], edi
call fcn.100c6280
mov ecx, dword [0x10152164]
mov edx, dword [esi + 0x1e8]
mov edi, dword [edx]
mov ebx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov dword [esi + 0x88], eax
mov eax, ebx
add eax, 0x5bc5ecc1
sub eax, 1
sub eax, 0x5bc5ecc1
imul ebx, eax
and ebx, 1
cmp ebx, 0
sete al
cmp edx, 0xa
setl ah
mov dl, al
and dl, ah
xor al, ah
or dl, al
test dl, 1
mov dword [esi + 0x84], edi
mov dword [esi + 0x80], ecx
jne 0x1008abca
jmp 0x1008b006
sub esp, 0xc
mov eax, esp
mov ecx, dword [esi + 0x88]
mov dword [eax + 8], ecx
mov edx, dword [esi + 0x80]
mov dword [eax + 4], edx
mov edi, dword [esi + 0x84]
mov dword [eax], edi
mov eax, dword [esi + 0x8c]
call eax
mov dword [esi + 0x7c], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x3c]
mov edx, dword [esi + 0x214]
mov edi, dword [edx]
mov dword [esi + 0x78], ecx
mov ecx, edi
call fcn.100c6280
mov ecx, dword [0x1015219c]
mov edx, dword [esi + 0x1e8]
mov edi, dword [edx]
sub esp, 0xc
mov ebx, esp
mov dword [ebx + 8], eax
mov dword [ebx + 4], ecx
mov dword [ebx], edi
mov eax, dword [esi + 0x78]
call eax
mov dword [esi + 0x74], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x3c]
mov edx, dword [eax]
add edx, 0x18
mov dword [esi + 0x70], ecx
mov ecx, edx
call fcn.100c6280
mov ecx, dword [0x101521a0]
mov edx, dword [esi + 0x1e8]
mov edi, dword [edx]
sub esp, 0xc
mov ebx, esp
mov dword [ebx + 8], eax
mov dword [ebx + 4], ecx
mov dword [ebx], edi
mov eax, dword [esi + 0x70]
call eax
mov dword [esi + 0x6c], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x44]
mov edx, dword [esi + 0x218]
mov edi, dword [edx]
add edi, 0x10
mov ebx, dword [0x10152188]
mov eax, dword [esi + 0x1e8]
mov eax, dword [eax]
sub esp, 0x10
mov edx, esp
mov dword [edx + 8], edi
mov dword [edx + 4], ebx
mov dword [edx], eax
mov dword [edx + 0xc], 0x10
call ecx
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x1e4]
mov ecx, dword [eax + 4]
mov ecx, dword [ecx + 0x30]
mov edx, dword [0x1013f1d4]
mov edi, dword [esi + 0x1e8]
mov ebx, dword [edi]
sub esp, 8
mov eax, esp
mov dword [eax + 4], edx
mov dword [eax], ebx
call ecx
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x220]
mov ecx, dword [eax]
mov edx, dword [esi + 0x64]
mov dword [ecx + 0xc], edx
mov ecx, dword [esi + 0x1e4]
mov edi, dword [ecx + 4]
mov edi, dword [edi + 0x3c]
mov ebx, dword [0x10152164]
mov eax, dword [esi + 0x1e8]
mov eax, dword [eax]
sub esp, 0xc
mov ecx, esp
mov dword [ecx + 4], ebx
mov dword [ecx], eax
mov dword [ecx + 8], 0x1014f810
call edi
mov dword [esi + 0x60], eax
mov al, 1
mov ecx, dword [0x101537c8]
mov edx, dword [0x101537c4]
mov edi, ecx
add edi, 0x6e19e20
sub edi, 1
sub edi, 0x6e19e20
imul ecx, edi
and ecx, 1
cmp ecx, 0
sete ah
cmp edx, 0xa
setl bl
mov bh, ah
xor bh, 1
mov cl, bl
xor cl, 1
xor al, 0
mov ch, bh
and ch, 0
and ah, al
mov dl, cl
and dl, 0
and bl, al
or ch, ah
or dl, bl
xor ch, dl
or bh, cl
xor bh, 1
or al, 0
and bh, al
or ch, bh
test ch, 1
jne 0x1008ad94
jmp 0x1008b035
mov al, 1
mov ecx, 0
mov edx, dword [esi + 0x1e4]
mov edi, dword [edx + 4]
mov edi, dword [edi + 0x34]
mov ebx, dword [esi + 0x220]
mov edx, dword [ebx]
mov edx, dword [edx + 0xc]
mov ebx, dword [esi + 0x1e8]
mov ebx, dword [ebx]
mov byte [esi + 0x5f], al
mov eax, dword [0x101537c8]
mov dword [esi + 0x58], eax
mov eax, dword [0x101537c4]
sub ecx, 1
mov dword [esi + 0x54], eax
mov eax, dword [esi + 0x58]
add eax, ecx
mov ecx, dword [esi + 0x58]
imul ecx, eax
and ecx, 1
cmp ecx, 0
sete al
mov ecx, dword [esi + 0x54]
cmp ecx, 0xa
setl ah
mov cl, al
xor cl, 1
mov ch, ah
xor ch, 1
mov byte [esi + 0x53], al
mov al, byte [esi + 0x5f]
xor al, 1
mov byte [esi + 0x52], al
mov al, cl
and al, 1
mov byte [esi + 0x51], al
mov al, byte [esi + 0x53]
mov byte [esi + 0x50], cl
mov cl, byte [esi + 0x52]
and al, cl
mov cl, ch
and cl, 1
mov byte [esi + 0x4f], al
mov al, byte [esi + 0x52]
and ah, al
mov al, byte [esi + 0x51]
mov byte [esi + 0x4e], cl
mov cl, byte [esi + 0x4f]
or al, cl
mov cl, byte [esi + 0x4e]
or cl, ah
xor al, cl
mov cl, byte [esi + 0x50]
or cl, ch
xor cl, 1
mov ah, byte [esi + 0x52]
or ah, 1
and cl, ah
or al, cl
test al, 1
mov dword [esi + 0x48], edi
mov dword [esi + 0x44], edx
mov dword [esi + 0x40], ebx
jne 0x1008ae67
jmp 0x1008b035
sub esp, 8
mov eax, esp
mov ecx, dword [esi + 0x44]
mov dword [eax + 4], ecx
mov edx, dword [esi + 0x40]
mov dword [eax], edx
mov eax, dword [esi + 0x48]
call eax
mov dword [esi + 0x3c], eax
mov eax, dword [esi + 0x1e8]
mov eax, dword [eax]
mov ecx, dword [esi + 0x1e0]
mov dword [ecx], 1
mov ecx, dword [esi + 0x204]
mov dword [esi + 0x38], eax
call fcn.1009a620
mov eax, dword [esi + 0x38]
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret 0x14
mov eax, 4
mov dword [esi + 0x34], eax
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x30], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x2c], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x28], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x24], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x34]
mov dword [esi + 0x20], eax
mov eax, ecx
call fcn.1001fcd0
mov eax, esp
mov ecx, dword [esi + 0x30]
mov edx, dword [esi + 0x24c]
mov dword [ecx], edx
mov edi, dword [esi + 0x2c]
mov ebx, dword [esi + 0x228]
mov dword [edi], ebx
mov ecx, dword [esi + 0x28]
mov edx, dword [esi + 0x22c]
mov dword [ecx], edx
mov ecx, dword [esi + 0x24]
mov edx, dword [esi + 0x230]
mov dword [ecx], edx
mov ecx, dword [esi + 0x20]
mov edx, dword [esi + 0x248]
mov dword [ecx], edx
mov ecx, dword [esi + 0x234]
mov dword [eax], ecx
mov eax, dword [esi + 0x20]
mov ecx, dword [eax]
call fcn.1008b3b0
mov dword [esi + 0x1c], eax
jmp 0x10089274
mov eax, dword [esi + 0x210]
mov ecx, dword [eax]
call fcn.1008b3b0
mov dword [esi + 0x18], eax
jmp 0x10089516
mov ecx, dword [esi + 0x200]
call fcn.1009a620
jmp 0x100896cb
jmp 0x10089852
jmp 0x1008996b
jmp 0x10089a20
mov ecx, dword [esi + 0x1f0]
call fcn.1009a620
mov ecx, dword [esi + 0x1ec]
call fcn.1002b850
mov ecx, dword [esi + 0x210]
mov ecx, dword [ecx]
call fcn.100c6280
mov dword [esi + 0x14], eax
jmp 0x10089ad5
mov eax, dword [0x1015216c]
mov ecx, dword [0x1013f1b8]
mov dword [esi + 0x10], eax
mov dword [esi + 0xc], ecx
jmp 0x10089c44
mov eax, dword [esi + 0x220]
mov ecx, dword [eax]
mov edx, dword [esi + 0x128]
mov dword [ecx], edx
jmp 0x1008a0a3
jmp 0x1008a373
jmp 0x1008a4f8
jmp 0x1008a5f6
jmp 0x1008a6fe
jmp 0x1008a7ff
jmp 0x1008a8a3
jmp 0x1008aa13
mov eax, dword [esi + 0x220]
mov ecx, dword [eax]
mov edx, dword [esi + 0x90]
mov dword [ecx + 8], edx
mov ecx, dword [esi + 0x214]
mov ecx, dword [ecx]
call fcn.100c6280
mov ecx, dword [0x10152164]
mov dword [esi + 8], eax
mov dword [esi + 4], ecx
jmp 0x1008ab2c
jmp 0x1008ad94