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

Disassembly:
sub esp, 0x118
mov eax, dword [esp + 0x12c]
push ebx
push ebp
push esi
mov ecx, dword [eax + 0x3c0]
push edi
movsx edx, byte [eax + 0x4f0]
mov dword [esp + 0x1c], ecx
mov ecx, dword [esp + 0x12c]
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], 0
mov edx, dword [ecx + 4]
mov edi, dword [ecx + 8]
mov eax, dword [ecx + 0xc]
cmp edx, 0x100
jae 0x100317b4
mov dword [esp + 0x24], 1
lea esi, [esp + 0x28]
jmp 0x100317b6
mov esi, dword [ecx]
mov ecx, dword [esp + 0x130]
movsx ebp, word [ecx]
sub ebp, dword [esp + 0x134]
mov ecx, ebp
mov edx, ebp
sar ecx, 0x1f
mov ebx, ecx
add ebp, ecx
xor ebx, edx
xor edx, edx
sub ebx, ecx
mov dl, byte [ebx + 0x100b8ed8]
mov ebx, edx
mov edx, dword [esp + 0x138]
mov dword [esp + 0x10], ebx
movsx ecx, byte [ebx + edx + 0x400]
mov edx, dword [edx + ebx*4]
add eax, ecx
shl edi, cl
or edx, edi
cmp eax, 0xf
jle 0x10031831
sub eax, 8
mov ebx, edx
mov ecx, eax
shr ebx, cl
inc esi
mov byte [esi - 1], bl
cmp bl, 0xff
jne 0x10031817
mov byte [esi], 0
inc esi
sub eax, 8
mov ebx, edx
mov ecx, eax
shr ebx, cl
inc esi
mov byte [esi - 1], bl
cmp bl, 0xff
mov ebx, dword [esp + 0x10]
jne 0x10031831
mov byte [esi], 0
inc esi
mov edi, 1
mov ecx, ebx
shl edi, cl
add eax, ebx
shl edx, cl
dec edi
and edi, ebp
or edi, edx
cmp eax, 0xf
jle 0x10031874
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003185e
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031874
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
movsx edx, word [ebx + 2]
test edx, edx
jne 0x1003188d
mov ebp, 1
jmp 0x1003194d
mov ecx, edx
sar ecx, 0x1f
lea ebp, [ecx + edx]
mov dword [esp + 0x18], ebp
mov ebp, ecx
xor ebp, edx
xor edx, edx
sub ebp, ecx
mov dl, byte [ebp + 0x100b8ed8]
mov ebp, 1
mov ecx, edx
shl ebp, cl
mov ecx, dword [esp + 0x18]
dec ebp
and ecx, ebp
mov ebp, dword [esp + 0x13c]
mov dword [esp + 0x18], ecx
movsx ecx, byte [edx + ebp + 0x400]
mov ebp, dword [ebp + edx*4]
add eax, ecx
shl edi, cl
or ebp, edi
cmp eax, 0xf
jle 0x1003190c
sub eax, 8
mov ebx, ebp
mov ecx, eax
shr ebx, cl
inc esi
mov byte [esi - 1], bl
cmp bl, 0xff
jne 0x100318ef
mov byte [esi], 0
inc esi
sub eax, 8
mov ebx, ebp
mov ecx, eax
shr ebx, cl
inc esi
mov byte [esi - 1], bl
cmp bl, 0xff
mov ebx, dword [esp + 0x130]
jne 0x1003190c
mov byte [esi], 0
inc esi
mov ecx, edx
add eax, edx
mov edx, dword [esp + 0x18]
shl ebp, cl
or ebp, edx
cmp eax, 0xf
mov edi, ebp
jle 0x1003194b
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031935
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003194b
mov byte [esi], 0
inc esi
xor ebp, ebp
movsx edx, word [ebx + 0x10]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x1003195f
inc ebp
jmp 0x10031a86
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, dword [esp + 0x10]
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x100319e3
lea ecx, [ebp - 0x10]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
shl edi, cl
add eax, ecx
or edi, edx
cmp eax, 0xf
jle 0x100319d4
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100319be
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100319d4
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10031995
mov ecx, dword [esp + 0x10]
mov edx, 1
shl edx, cl
shl ebp, 4
add ebp, ecx
mov ecx, dword [esp + 0x18]
dec edx
and ecx, edx
mov edx, dword [esp + 0x13c]
mov dword [esp + 0x18], ecx
movsx ecx, byte [edx + ebp + 0x400]
mov ebp, dword [edx + ebp*4]
add eax, ecx
shl edi, cl
or ebp, edi
cmp eax, 0xf
jle 0x10031a43
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031a2d
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031a43
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
shl ebp, cl
add eax, ecx
or ebp, edx
cmp eax, 0xf
mov edi, ebp
jle 0x10031a84
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031a6e
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031a84
mov byte [esi], 0
inc esi
xor ebp, ebp
movsx edx, word [ebx + 0x20]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10031a98
inc ebp
jmp 0x10031bbf
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, dword [esp + 0x10]
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10031b1c
lea ecx, [ebp - 0x10]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov ecx, dword [esp + 0x20]
mov edx, dword [esp + 0x1c]
shl edi, cl
add eax, ecx
or edi, edx
cmp eax, 0xf
jle 0x10031b0d
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031af7
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031b0d
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10031ace
mov ecx, dword [esp + 0x10]
mov edx, 1
shl edx, cl
shl ebp, 4
add ebp, ecx
mov ecx, dword [esp + 0x18]
dec edx
and ecx, edx
mov edx, dword [esp + 0x13c]
mov dword [esp + 0x18], ecx
movsx ecx, byte [edx + ebp + 0x400]
mov ebp, dword [edx + ebp*4]
add eax, ecx
shl edi, cl
or ebp, edi
cmp eax, 0xf
jle 0x10031b7c
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031b66
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031b7c
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x18]
shl ebp, cl
add eax, ecx
or ebp, edx
cmp eax, 0xf
mov edi, ebp
jle 0x10031bbd
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031ba7
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031bbd
mov byte [esi], 0
inc esi
xor ebp, ebp
movsx edx, word [ebx + 0x12]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10031bd1
inc ebp
jmp 0x10031d06
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10031c55
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10031c4a
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031c34
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031c4a
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10031c0d
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10031cc0
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031caa
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031cc0
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10031cfd
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031ce7
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031cfd
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 4]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10031d18
inc ebp
jmp 0x10031e4d
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10031d9c
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10031d91
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031d7b
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031d91
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10031d54
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10031e07
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031df1
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031e07
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10031e44
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031e2e
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031e44
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 6]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10031e5f
inc ebp
jmp 0x10031f94
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10031ee3
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10031ed8
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031ec2
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031ed8
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10031e9b
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10031f4e
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031f38
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031f4e
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10031f8b
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031f75
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10031f8b
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x14]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10031fa6
inc ebp
jmp 0x100320db
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x1003202a
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x1003201f
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032009
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003201f
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10031fe2
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10032095
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003207f
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032095
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x100320d2
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100320bc
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100320d2
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x22]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x100320ed
inc ebp
jmp 0x10032222
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10032171
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10032166
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032150
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032166
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10032129
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x100321dc
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100321c6
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100321dc
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10032219
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032203
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032219
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x30]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10032234
inc ebp
jmp 0x10032369
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x100322b8
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x100322ad
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032297
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100322ad
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10032270
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10032323
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003230d
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032323
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10032360
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003234a
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032360
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x40]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x1003237b
inc ebp
jmp 0x100324b0
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x100323ff
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x100323f4
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100323de
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100323f4
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x100323b7
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x1003246a
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032454
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003246a
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x100324a7
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032491
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100324a7
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x32]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x100324c2
inc ebp
jmp 0x100325f7
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10032546
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x1003253b
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032525
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003253b
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x100324fe
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x100325b1
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003259b
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100325b1
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x100325ee
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100325d8
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100325ee
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x24]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10032609
inc ebp
jmp 0x1003273e
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x1003268d
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10032682
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003266c
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032682
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10032645
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x100326f8
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100326e2
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100326f8
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10032735
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003271f
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032735
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x16]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10032750
inc ebp
jmp 0x10032885
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x100327d4
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x100327c9
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100327b3
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100327c9
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x1003278c
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x1003283f
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032829
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003283f
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x1003287c
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032866
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003287c
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 8]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10032897
inc ebp
jmp 0x100329cc
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x1003291b
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10032910
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100328fa
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032910
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x100328d3
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10032986
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032970
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032986
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x100329c3
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100329ad
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100329c3
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0xa]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x100329de
inc ebp
jmp 0x10032b13
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10032a62
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10032a57
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032a41
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032a57
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10032a1a
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10032acd
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032ab7
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032acd
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10032b0a
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032af4
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032b0a
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x18]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10032b25
inc ebp
jmp 0x10032c5a
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10032ba9
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10032b9e
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032b88
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032b9e
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10032b61
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10032c14
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032bfe
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032c14
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10032c51
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032c3b
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032c51
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x26]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10032c6c
inc ebp
jmp 0x10032da1
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10032cf0
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10032ce5
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032ccf
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032ce5
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10032ca8
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10032d5b
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032d45
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032d5b
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10032d98
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032d82
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032d98
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x34]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10032db3
inc ebp
jmp 0x10032ee8
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10032e37
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10032e2c
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032e16
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032e2c
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10032def
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10032ea2
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032e8c
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032ea2
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10032edf
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032ec9
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032edf
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x42]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10032efa
inc ebp
jmp 0x1003302f
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10032f7e
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10032f73
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032f5d
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032f73
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10032f36
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10032fe9
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032fd3
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10032fe9
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10033026
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033010
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033026
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x50]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10033041
inc ebp
jmp 0x10033176
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x100330c5
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x100330ba
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100330a4
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100330ba
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x1003307d
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10033130
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003311a
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033130
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x1003316d
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033157
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003316d
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x60]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10033188
inc ebp
jmp 0x100332bd
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x1003320c
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10033201
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100331eb
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033201
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x100331c4
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10033277
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033261
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033277
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x100332b4
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003329e
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100332b4
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x52]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x100332cf
inc ebp
jmp 0x10033404
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10033353
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10033348
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033332
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033348
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x1003330b
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x100333be
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100333a8
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100333be
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x100333fb
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100333e5
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100333fb
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x44]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10033416
inc ebp
jmp 0x1003354b
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x1003349a
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x1003348f
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033479
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003348f
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10033452
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10033505
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100334ef
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033505
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10033542
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003352c
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033542
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x36]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x1003355d
inc ebp
jmp 0x10033692
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x100335e1
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x100335d6
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100335c0
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100335d6
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10033599
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x1003364c
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033636
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003364c
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10033689
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033673
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033689
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x28]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x100336a4
inc ebp
jmp 0x100337d9
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10033728
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x1003371d
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033707
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003371d
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x100336e0
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10033793
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003377d
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033793
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x100337d0
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100337ba
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100337d0
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x1a]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x100337eb
inc ebp
jmp 0x10033920
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x1003386f
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10033864
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x1003384e
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033864
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10033827
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x100338da
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100338c4
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100338da
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10033917
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033901
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033917
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0xc]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10033932
inc ebp
jmp 0x10033a67
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x100339b6
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x100339ab
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033995
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x100339ab
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x1003396e
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10033a21
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033a0b
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033a21
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10033a5e
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033a48
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033a5e
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0xe]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10033a79
inc ebp
jmp 0x10033bae
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10033afd
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10033af2
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033adc
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033af2
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10033ab5
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10033b68
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033b52
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033b68
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10033ba5
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033b8f
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033ba5
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x1c]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10033bc0
inc ebp
jmp 0x10033cf5
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10033c44
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10033c39
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033c23
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033c39
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10033bfc
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10033caf
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033c99
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033caf
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10033cec
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033cd6
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033cec
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x2a]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10033d07
inc ebp
jmp 0x10033e3c
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10033d8b
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10033d80
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033d6a
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033d80
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10033d43
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10033df6
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033de0
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033df6
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10033e33
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033e1d
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033e33
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x38]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10033e4e
inc ebp
jmp 0x10033f83
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10033ed2
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x10033ec7
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033eb1
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033ec7
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x14]
dec ecx
mov dword [esp + 0x14], ecx
jne 0x10033e8a
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10033f3d
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033f27
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, ebp
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033f3d
mov byte [esi], 0
inc esi
mov ecx, dword [esp + 0x10]
shl ebp, cl
add eax, ecx
or ebp, ebx
cmp eax, 0xf
mov edi, ebp
jle 0x10033f7a
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033f64
mov byte [esi], 0
inc esi
sub eax, 8
mov edx, edi
mov ecx, eax
shr edx, cl
inc esi
mov byte [esi - 1], dl
cmp dl, 0xff
jne 0x10033f7a
mov byte [esi], 0
inc esi
mov ebx, dword [esp + 0x130]
xor ebp, ebp
movsx edx, word [ebx + 0x46]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x10033f95
inc ebp
jmp 0x100340ca
mov ebx, dword [esp + 0x10]
mov ecx, edx
sar ecx, 0x1f
add edx, ecx
mov dword [esp + 0x18], edx
mov edx, ecx
xor edx, ebx
sub edx, ecx
xor ecx, ecx
cmp ebp, 0xf
mov cl, byte [edx + 0x100b8ed8]
mov dword [esp + 0x10], ecx
jle 0x10034019
lea ecx, [ebp - 0x10]
mov ebx, dword [esp + 0x20]
shr ecx, 4
inc ecx
mov dword [esp + 0x14], ecx
neg ecx
shl ecx, 4
add ebp, ecx
mov edx, dword [esp + 0x1c]
mov ecx, ebx
shl edi, cl
add eax, ebx
or edi, edx
cmp eax, 0xf
jle 0x1003400e
mov ecx, dword [esp + 0x10]
mov edx, dword [esp + 0x13c]
mov ebx, 1
shl ebx, cl
shl ebp, 4
add ebp, ecx
movsx edx, byte [edx + ebp + 0x400]
dec ebx
add eax, edx
mov ecx, ebx
mov ebx, dword [esp + 0x18]
and ebx, ecx
mov ecx, edx
shl edi, cl
mov ecx, dword [esp + 0x13c]
mov ebp, dword [ecx + ebp*4]
or ebp, edi
cmp eax, 0xf
jle 0x10034084
movsx edx, word [ebx + 0x54]
test edx, edx
mov dword [esp + 0x10], edx
jne 0x100340dc