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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xfffffff8
mov eax, 0x11b4
call fcn.100b3ca0
mov eax, dword [section..data]
xor eax, esp
mov dword [esp + 0x11b0], eax
push ebx
push esi
push edi
mov edi, ecx
lea ecx, [esp + 0x88]
mov dword [esp + 0x2c], ecx
lea eax, [esp + 0x1028]
lea ecx, [esp + 0x1028]
lea edx, [esp + 0x3a8]
mov dword [esp + 0x28], eax
xor eax, eax
mov dword [esp + 0x18], ecx
mov ecx, 1
mov esi, edx
mov dword [esp + 0x48], edx
mov dword [esp + 0x24], 0xc8
mov dword [esp + 0x30], eax
mov dword [esp + 0x60], eax
mov dword [esp + 0x20], 0xfffffffe
lea ebx, [esp + 0x88]
mov dword [esp + 0x14], esi
mov dword [esp + 0x3c], ecx
mov dword [esp + 0x34], ecx
mov dword [esp + 0x40], eax
mov dword [esp + 0x38], eax
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 0x28]
mov word [edx], ax
mov edx, dword [esp + 0x24]
lea edx, [ecx + edx*2 - 2]
mov ecx, dword [esp + 0x18]
mov dword [esp + 0x10], eax
cmp edx, ecx
ja 0x1003ba91
sub ecx, dword [esp + 0x28]
sar ecx, 1
inc ecx
cmp dword [esp + 0x24], 0x2710
mov ebx, ecx
mov dword [esp + 0x1c], ebx
jae 0x1003c3f7
mov eax, dword [esp + 0x24]
add eax, eax
mov dword [esp + 0x24], eax
cmp eax, 0x2710
jbe 0x1003b962
mov dword [esp + 0x24], 0x2710
mov esi, dword [esp + 0x24]
mov eax, dword [esp + 0x28]
imul esi, esi, 0x16
add esi, 0x1e
push esi
mov dword [esp + 0x1c], eax
call dword [sym.imp.MSVCR90.dll_malloc]
add esp, 4
mov dword [esp + 0x44], eax
test eax, eax
je 0x1003c3e5
test ebx, ebx
jbe 0x1003b9b1
mov edx, dword [esp + 0x28]
mov ecx, eax
sub edx, eax
mov dword [esp + 0x14], ebx
lea ebx, [ebx]
mov si, word [edx + ecx]
mov word [ecx], si
add ecx, 2
sub dword [esp + 0x14], 1
jne 0x1003b9a0
mov esi, dword [esp + 0x24]
lea esi, [esi + esi + 0xf]
shr esi, 4
shl esi, 4
add esi, eax
mov dword [esp + 0x28], eax
test ebx, ebx
jbe 0x1003b9e4
mov ecx, dword [esp + 0x2c]
mov eax, esi
sub ecx, esi
mov dword [esp + 0x2c], ebx
mov edx, dword [ecx + eax]
mov dword [eax], edx
add eax, 4
sub dword [esp + 0x2c], 1
jne 0x1003b9d5
mov eax, dword [esp + 0x24]
lea ecx, [eax*4 + 0xf]
shr ecx, 4
shl ecx, 4
mov dword [esp + 0x2c], esi
add esi, ecx
test ebx, ebx
jbe 0x1003ba34
mov ecx, dword [esp + 0x48]
mov eax, esi
sub ecx, esi
mov dword [esp + 0x14], ebx
jmp 0x1003ba10
mov edx, dword [ecx + eax]
mov dword [eax], edx
mov edx, dword [ecx + eax + 4]
mov dword [eax + 4], edx
mov edx, dword [ecx + eax + 8]
mov dword [eax + 8], edx
mov edx, dword [ecx + eax + 0xc]
mov dword [eax + 0xc], edx
add eax, 0x10
sub dword [esp + 0x14], 1
jne 0x1003ba10
lea eax, [esp + 0x1028]
mov dword [esp + 0x48], esi
cmp dword [esp + 0x18], eax
je 0x1003ba53
mov ecx, dword [esp + 0x18]
push ecx
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
mov edx, dword [esp + 0x44]
mov eax, dword [esp + 0x2c]
lea ecx, [edx + ebx*2 - 2]
lea ebx, [eax + ebx*4 - 4]
mov eax, dword [esp + 0x1c]
shl eax, 4
lea esi, [eax + esi - 0x10]
mov eax, dword [esp + 0x24]
lea edx, [edx + eax*2 - 2]
mov dword [esp + 0x18], ecx
cmp edx, ecx
mov dword [esp + 0x14], esi
mov ecx, 1
jbe 0x1003bc77
mov eax, dword [esp + 0x10]
jmp 0x1003ba96
mov ecx, 1
movsx edx, byte [eax + 0x100b97d8]
mov dword [esp + 0x1c], edx
cmp edx, 0xffffffea
je 0x1003bc07
mov ecx, dword [esp + 0x20]
cmp ecx, 0xfffffffe
jne 0x1003badb
lea eax, [esp + 0x34]
push eax
lea ecx, [esp + 0x60]
push ecx
mov esi, edi
call fcn.1003cb10
mov edx, dword [esp + 0x24]
mov esi, dword [esp + 0x1c]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x28]
add esp, 8
test ecx, ecx
jg 0x1003bae7
xor ecx, ecx
mov dword [esp + 0x20], ecx
jmp 0x1003bb01
cmp ecx, 0x112
ja 0x1003bafc
mov ecx, dword [esp + 0x20]
movzx ecx, byte [ecx + 0x100b95e0]
jmp 0x1003bb01
mov ecx, 2
add edx, ecx
mov dword [esp + 0x1c], edx
cmp edx, 0x4f
ja 0x1003bc02
movzx edx, byte [edx + 0x100b9890]
cmp edx, ecx
jne 0x1003bc02
mov ecx, dword [esp + 0x1c]
movzx edx, byte [ecx + 0x100b9840]
test edx, edx
jg 0x1003bba7
je 0x1003bc1c
cmp edx, 0xffffffff
je 0x1003bc1c
neg edx
mov dword [esp + 0x1c], edx
mov ecx, 1
mov edx, dword [esp + 0x1c]
movzx eax, byte [edx + 0x100b9730]
mov dword [esp + 0x14], eax
lea edx, [eax*4]
mov eax, ebx
sub eax, edx
mov dword [esp + 0x64], eax
mov eax, dword [eax + 4]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x14]
test eax, eax
je 0x1003bd84
mov edx, eax
shl edx, 4
mov eax, esi
sub eax, edx
mov edx, dword [eax + 0x10]
mov dword [esp + 0x44], eax
mov eax, dword [eax + 0x14]
mov dword [esp + 0x4c], edx
mov edx, dword [esi + 8]
mov dword [esp + 0x50], eax
mov eax, dword [esi + 0xc]
mov dword [esp + 0x54], edx
mov dword [esp + 0x58], eax
jmp 0x1003bda3
cmp edx, 2
je 0x1003c413
cmp dword [esp + 0x30], 0
je 0x1003bbbb
dec dword [esp + 0x30]
cmp dword [esp + 0x20], 0
je 0x1003bbca
mov dword [esp + 0x20], 0xfffffffe
mov ecx, dword [esp + 0x34]
mov eax, edx
mov edx, dword [esp + 0x5c]
mov dword [ebx + 4], edx
mov edx, dword [esp + 0x38]
add ebx, 4
add esi, 0x10
add dword [esp + 0x18], 2
mov dword [esi], ecx
mov ecx, dword [esp + 0x3c]
mov dword [esi + 4], edx
mov edx, dword [esp + 0x40]
mov dword [esi + 8], ecx
mov dword [esp + 0x14], esi
mov dword [esi + 0xc], edx
jmp 0x1003b90b
mov ecx, 1
movzx edx, byte [eax + 0x100b9770]
mov dword [esp + 0x1c], edx
test edx, edx
jne 0x1003bb48
jmp 0x1003bc21
mov ecx, 1
cmp dword [esp + 0x30], 0
jne 0x1003bc47
inc dword [esp + 0x60]
lea eax, [esp + 0x34]
push str.syntax_error
push eax
call fcn.1003c4f0
mov eax, dword [esp + 0x18]
add esp, 8
mov ecx, 1
cmp dword [esp + 0x30], 3
mov edx, dword [esp + 0x34]
mov dword [esp + 0x68], edx
mov edx, dword [esp + 0x38]
mov dword [esp + 0x6c], edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x70], edx
mov edx, dword [esp + 0x40]
mov dword [esp + 0x74], edx
jne 0x1003bcb3
cmp dword [esp + 0x20], 0
jg 0x1003bcab
jne 0x1003bcb3
mov esi, ecx
lea ecx, [esp + 0x1028]
cmp dword [esp + 0x28], ecx
je 0x1003bc94
mov edx, dword [esp + 0x28]
push edx
call dword [sym.imp.MSVCR90.dll_free]
add esp, 4
mov ecx, dword [esp + 0x11bc]
pop edi
mov eax, esi
pop esi
pop ebx
xor ecx, esp
call fcn.100b30c8
mov esp, ebp
pop ebp
ret
mov dword [esp + 0x20], 0xfffffffe
mov edx, dword [esp + 0x18]
mov dword [esp + 0x30], 3
nop
movsx eax, byte [eax + 0x100b97d8]
cmp eax, 0xffffffea
je 0x1003bce7
add eax, ecx
cmp eax, 0x4f
ja 0x1003bce7
cmp byte [eax + 0x100b9890], 1
jne 0x1003bce7
movzx eax, byte [eax + 0x100b9840]
test eax, eax
jg 0x1003bd1f
cmp edx, dword [esp + 0x28]
je 0x1003bc77
mov eax, dword [esi]
mov dword [esp + 0x68], eax
mov edx, dword [esi + 4]
mov dword [esp + 0x6c], edx
mov eax, dword [esi + 8]
mov dword [esp + 0x70], eax
mov edx, dword [esi + 0xc]
mov dword [esp + 0x74], edx
mov edx, dword [esp + 0x18]
movsx eax, word [edx - 2]
sub edx, 2
sub ebx, 4
mov dword [esp + 0x18], edx
sub esi, 0x10
jmp 0x1003bcc0
cmp eax, 2
je 0x1003c413
mov ecx, dword [esp + 0x5c]
mov edx, dword [esp + 0x34]
mov dword [ebx + 4], ecx
mov ecx, dword [esp + 0x38]
add ebx, 4
mov dword [esp + 0x78], edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x7c], ecx
mov ecx, dword [esp + 0x40]
mov dword [esp + 0x80], edx
mov edx, dword [esp + 0x68]
mov dword [esp + 0x84], ecx
mov ecx, dword [esp + 0x6c]
add esi, 0x10
add dword [esp + 0x18], 2
mov dword [esi], edx
mov edx, dword [esp + 0x3c]
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x40]
mov dword [esi + 8], edx
mov dword [esp + 0x14], esi
mov dword [esi + 0xc], ecx
jmp 0x1003b90b
shl eax, 4
sub esi, eax
mov eax, dword [esi + 8]
mov dword [esp + 0x44], esi
mov esi, dword [esi + 0xc]
mov dword [esp + 0x54], eax
mov dword [esp + 0x4c], eax
mov dword [esp + 0x58], esi
mov dword [esp + 0x50], esi
mov eax, dword [esp + 0x1c]
add eax, 0xfffffffc
cmp eax, 0x34
ja case.0x1003bdb3.12
jmp dword [eax*4 + 0x1003c41c]
add dword [edi + 0x28], ecx
jmp case.0x1003bdb3.12
add dword [edi + 0x4c], ecx
jmp case.0x1003bdb3.12
add dword [edi + 0x58], ecx
jmp case.0x1003bdb3.12
add dword [edi + 0x28], ecx
add dword [edi + 0x14], ecx
jmp case.0x1003bdb3.12
add dword [edi + 0x28], ecx
add dword [edi + 0x14], ecx
add dword [edi + 0x44], ecx
jmp case.0x1003bdb3.12
mov ecx, dword [ebx - 4]
xor eax, eax
mov dword [edi + 0x18], ecx
mov dword [edi + 0x1c], eax
mov dword [edi + 0x20], eax
mov edx, dword [ebx]
mov dword [edi + 0x24], edx
jmp case.0x1003bdb3.12
mov eax, dword [ebx - 0xc]
mov dword [edi + 0x18], eax
mov ecx, dword [ebx - 4]
mov dword [edi + 0x1c], ecx
mov dword [edi + 0x20], 0
mov edx, dword [ebx]
mov dword [edi + 0x24], edx
jmp case.0x1003bdb3.12
mov eax, dword [ebx - 0x10]
mov dword [edi + 0x18], eax
mov edx, dword [ebx - 8]
mov dword [edi + 0x1c], edx
mov dword [edi + 0x24], 2
mov dword [edi + 0x30], ecx
mov eax, dword [ebx]
cdq
mov esi, 0x64
idiv esi
mov esi, eax
shl esi, 4
sub esi, eax
lea eax, [edx + esi*4]
mov dword [edi + 0x2c], eax
add dword [edi + 0x34], ecx
jmp case.0x1003bdb3.12
mov ecx, dword [ebx - 0x14]
mov dword [edi + 0x18], ecx
mov edx, dword [ebx - 0xc]
mov dword [edi + 0x1c], edx
mov eax, dword [ebx - 4]
mov dword [edi + 0x20], eax
mov ecx, dword [ebx]
mov dword [edi + 0x24], ecx
jmp case.0x1003bdb3.12
mov edx, dword [ebx - 0x18]
mov dword [edi + 0x18], edx
mov eax, dword [ebx - 0x10]
mov dword [edi + 0x1c], eax
mov edx, dword [ebx - 8]
mov dword [edi + 0x20], edx
mov dword [edi + 0x24], 2
mov dword [edi + 0x30], ecx
mov eax, dword [ebx]
cdq
mov esi, 0x64
idiv esi
mov esi, eax
shl esi, 4
sub esi, eax
add dword [edi + 0x34], ecx
lea eax, [edx + esi*4]
mov dword [edi + 0x2c], eax
jmp case.0x1003bdb3.12
mov ecx, dword [ebx - 4]
mov dword [edi + 0x2c], ecx
mov dword [edi + 0x30], 0
jmp case.0x1003bdb3.12
mov edx, dword [ebx]
mov dword [edi + 0x2c], edx
mov dword [edi + 0x30], ecx
jmp case.0x1003bdb3.12
mov eax, dword [ebx]
mov dword [edi + 0x2c], eax
mov dword [edi + 0x30], 0
jmp case.0x1003bdb3.12
mov dword [edi + 0x50], ecx
mov ecx, dword [ebx]
mov dword [edi + 0x54], ecx
jmp case.0x1003bdb3.12
mov dword [edi + 0x50], ecx
mov edx, dword [ebx - 4]
mov dword [edi + 0x54], edx
jmp case.0x1003bdb3.12
mov eax, dword [ebx - 4]
mov dword [edi + 0x50], eax
mov ecx, dword [ebx]
mov dword [edi + 0x54], ecx
jmp case.0x1003bdb3.12
mov edx, dword [ebx - 8]
imul edx, dword [ebx - 4]
mov dword [edi + 0x50], edx
mov eax, dword [ebx]
mov dword [edi + 0x54], eax
jmp case.0x1003bdb3.12
mov dword [edi + 0x50], 2
mov ecx, dword [ebx]
mov dword [edi + 0x54], ecx
jmp case.0x1003bdb3.12
mov edx, dword [ebx - 8]
mov dword [edi + 0xc], edx
mov eax, dword [ebx]
mov dword [edi + 0x10], eax
jmp case.0x1003bdb3.12
mov ecx, dword [ebx - 0x10]
mov dword [edi + 0xc], ecx
mov edx, dword [ebx - 8]
mov dword [edi + 0x10], edx
mov eax, dword [ebx]
mov dword [edi + 8], eax
jmp case.0x1003bdb3.12
mov edx, dword [ebx]
mov eax, 0x68db8bad
imul edx
sar edx, 0xc
mov ecx, edx
shr ecx, 0x1f
add ecx, edx
mov dword [edi + 8], ecx
mov eax, dword [ebx]
cdq
mov ecx, 0x2710
idiv ecx
mov eax, 0x51eb851f
mov ecx, 0x64
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 0xc], eax
mov eax, dword [ebx]
cdq
idiv ecx
mov dword [edi + 0x10], edx
jmp case.0x1003bdb3.12
mov edx, dword [ebx - 0x10]
mov dword [edi + 0x10], edx
mov eax, dword [ebx - 8]
mov dword [edi + 0xc], eax
mov ecx, dword [ebx]
mov dword [edi + 8], ecx
jmp case.0x1003bdb3.12
mov edx, dword [ebx - 8]
mov dword [edi + 0xc], edx
mov eax, dword [ebx]
mov dword [edi + 0x10], eax
mov ecx, dword [ebx - 0x10]
mov dword [edi + 8], ecx
jmp case.0x1003bdb3.12
mov edx, dword [ebx - 4]
mov dword [edi + 0xc], edx
mov eax, dword [ebx]
mov dword [edi + 0x10], eax
jmp case.0x1003bdb3.12
mov ecx, dword [ebx - 0xc]
mov dword [edi + 0xc], ecx
mov edx, dword [ebx - 8]
mov dword [edi + 0x10], edx
mov eax, dword [ebx]
mov dword [edi + 8], eax
jmp case.0x1003bdb3.12
mov ecx, dword [ebx]
mov dword [edi + 0xc], ecx
mov edx, dword [ebx - 4]
mov dword [edi + 0x10], edx
jmp case.0x1003bdb3.12
mov dword [edi + 0xc], ecx
mov dword [edi + 0x10], ecx
mov dword [edi + 8], 0x7b2
jmp case.0x1003bdb3.12
mov eax, dword [ebx - 4]
mov dword [edi + 0xc], eax
mov ecx, dword [ebx - 8]
mov dword [edi + 0x10], ecx
mov edx, dword [ebx]
mov dword [edi + 8], edx
jmp case.0x1003bdb3.12
mov dword [edi + 0x48], ecx
mov eax, dword [ebx]
mov dword [edi + 0xc], eax
jmp case.0x1003bdb3.12
mov ecx, dword [ebx - 4]
mov dword [edi + 0x48], ecx
mov edx, dword [ebx]
mov dword [edi + 0xc], edx
jmp case.0x1003bdb3.12
cmp dword [ebx - 4], 0x1a4
jne 0x1003bc77
mov edx, dword [ebx - 8]
mov eax, 0x68db8bad
imul edx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 8], eax
mov eax, dword [ebx - 8]
cdq
mov ecx, 0x2710
idiv ecx
mov eax, 0x51eb851f
mov ecx, 0x64
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 0xc], eax
mov eax, dword [ebx - 8]
cdq
idiv ecx
mov eax, 0x68db8bad
mov ecx, 0x2710
mov dword [edi + 0x10], edx
mov edx, dword [ebx]
imul edx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 0x18], eax
mov eax, dword [ebx]
cdq
idiv ecx
mov eax, 0x51eb851f
mov ecx, 0x64
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 0x1c], eax
mov eax, dword [ebx]
cdq
idiv ecx
mov dword [edi + 0x20], edx
jmp case.0x1003bdb3.12
cmp dword [ebx - 0x14], 0x1a4
jne 0x1003bc77
mov edx, dword [ebx - 0x18]
mov eax, 0x68db8bad
imul edx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 8], eax
mov eax, dword [ebx - 0x18]
cdq
mov ecx, 0x2710
idiv ecx
mov eax, 0x51eb851f
mov ecx, 0x64
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 0xc], eax
mov eax, dword [ebx - 0x18]
cdq
idiv ecx
mov dword [edi + 0x10], edx
mov edx, dword [ebx - 0x10]
mov dword [edi + 0x18], edx
mov eax, dword [ebx - 8]
mov dword [edi + 0x1c], eax
mov ecx, dword [ebx]
mov dword [edi + 0x20], ecx
jmp case.0x1003bdb3.12
mov edx, dword [ebx - 4]
mov eax, 0x68db8bad
imul edx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 8], eax
mov eax, dword [ebx - 4]
cdq
mov ecx, 0x2710
idiv ecx
mov eax, 0x51eb851f
mov ecx, 0x64
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 0xc], eax
mov eax, dword [ebx - 4]
cdq
idiv ecx
mov eax, 0x68db8bad
mov ecx, 0x2710
mov dword [edi + 0x10], edx
mov edx, dword [ebx]
imul edx
sar edx, 0xc
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 0x18], eax
mov eax, dword [ebx]
cdq
idiv ecx
mov eax, 0x51eb851f
mov ecx, 0x64
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 0x1c], eax
mov eax, dword [ebx]
cdq
idiv ecx
mov dword [edi + 0x20], edx
jmp case.0x1003bdb3.12
mov edx, dword [ebx - 8]
mov eax, 0x10624dd3
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
lea edx, [edx + eax + 0x79a]
mov esi, edx
mov eax, edx
and eax, reloc.WS2_32.dll_closesocket
mov dword [edi + 8], edx
mov dword [edi + 0x10], ecx
mov dword [edi + 0xc], ecx
jns 0x1003c1f9
dec eax
or eax, 0xfffffffc
inc eax
jne 0x1003c21e
mov eax, esi
cdq
mov ecx, 0x64
idiv ecx
test edx, edx
jne 0x1003c217
mov eax, esi
cdq
mov ecx, 0x190
idiv ecx
test edx, edx
jne 0x1003c21e
mov esi, 1
jmp 0x1003c220
xor esi, esi
mov eax, dword [ebx - 8]
cdq
mov ecx, 0x3e8
idiv ecx
add esi, 0x16d
mov eax, 0x10624dd3
imul edx, esi
imul edx
sar edx, 6
mov eax, edx
shr eax, 0x1f
add eax, edx
add dword [edi + 0x3c], eax
mov ecx, dword [ebx]
imul ecx, ecx, 0x21c0
add dword [edi + 0x40], ecx
jmp case.0x1003bdb3.12
mov edx, dword [edi + 0x40]
mov eax, dword [edi + 0x38]
mov ecx, dword [edi + 0x3c]
neg edx
neg eax
neg ecx
mov dword [edi + 0x40], edx
mov dword [edi + 0x38], eax
mov dword [edi + 0x3c], ecx
jmp case.0x1003bdb3.12
mov edx, dword [ebx - 8]
imul edx, dword [ebx - 4]
imul edx, dword [ebx]
mov eax, dword [edi + 0x64]
add dword [eax], edx
jmp case.0x1003bdb3.12
mov ecx, dword [ebx - 4]
imul ecx, dword [ebx]
mov eax, dword [edi + 0x64]
add dword [eax], ecx
jmp case.0x1003bdb3.12
mov eax, dword [edi + 0x64]
mov edx, dword [ebx]
add dword [eax], edx
jmp case.0x1003bdb3.12
mov dword [esp + 0x10], 0xffffffff
jmp case.0x1003bdb3.12
mov eax, dword [ebx]
lea ecx, [edi + 0x40]
mov dword [esp + 0x10], eax
mov dword [edi + 0x64], ecx
jmp case.0x1003bdb3.12
mov edx, dword [ebx]
lea eax, [edi + 0x3c]
mov dword [esp + 0x10], edx
mov dword [edi + 0x64], eax
jmp case.0x1003bdb3.12
mov ecx, dword [ebx]
lea edx, [edi + 0x38]
mov dword [edi + 0x64], edx
jmp case.0x1003bdb3.50
mov eax, dword [edi + 0x28]
xor esi, esi
cmp eax, esi
je 0x1003c2f8
cmp dword [edi + 0x14], esi
je 0x1003c2f8
cmp dword [edi + 0x44], esi
jne 0x1003c2f8
mov eax, dword [ebx]
mov dword [edi + 8], eax
jmp case.0x1003bdb3.12
inc eax
mov ecx, 2
cmp dword [edi + 0x68], ecx
mov dword [edi + 0x28], eax
mov edx, dword [ebx]
jg 0x1003c316
mov dword [edi + 0x18], edx
mov dword [edi + 0x1c], esi
mov dword [edi + 0x20], esi
mov dword [edi + 0x24], ecx
jmp case.0x1003bdb3.12
mov eax, 0x51eb851f
imul edx
sar edx, 5
mov eax, edx
shr eax, 0x1f
add eax, edx
mov dword [edi + 0x18], eax
mov eax, dword [ebx]
cdq
mov ebx, 0x64
idiv ebx
mov dword [edi + 0x20], esi
mov dword [edi + 0x24], ecx
mov dword [edi + 0x1c], edx
jmp case.0x1003bdb3.12
mov dword [esp + 0x10], 2
jmp case.0x1003bdb3.12
mov ecx, dword [ebx]
mov dword [esp + 0x10], ecx
mov eax, dword [esp + 0x14]
mov edx, dword [esp + 0x18]
mov ebx, dword [esp + 0x64]
mov esi, dword [esp + 0x44]
mov ecx, dword [esp + 0x10]
mov dword [ebx + 4], ecx
mov ecx, dword [esp + 0x50]
neg eax
lea eax, [edx + eax*2]
mov edx, dword [esp + 0x4c]
add esi, 0x10
mov dword [esi], edx
mov edx, dword [esp + 0x54]
add ebx, 4
mov dword [esi + 4], ecx
mov ecx, dword [esp + 0x58]
mov dword [esi + 8], edx
mov edx, dword [esp + 0x1c]
mov dword [esi + 0xc], ecx
movzx edx, byte [edx + 0x100b96f4]
movsx ecx, word [eax]
mov dword [esp + 0x18], eax
movsx eax, byte [edx + 0x100b9812]
add eax, ecx
mov dword [esp + 0x14], esi
mov dword [esp + 0x1c], edx
cmp eax, 0x4f
ja 0x1003c3d4
movzx edx, byte [eax + 0x100b9890]
cmp edx, ecx
jne 0x1003c3d0
movzx eax, byte [eax + 0x100b9840]
add dword [esp + 0x18], 2
jmp 0x1003b90b
mov edx, dword [esp + 0x1c]
movsx eax, byte [edx + 0x100b97aa]
add dword [esp + 0x18], 2
jmp 0x1003b90b
test esi, esi
je 0x1003c3f7
push esi
push str.unable_to_alloc__u_bytes
call sym.tcl85.dll_Tcl_Panic
add esp, 8
lea eax, [esp + 0x34]
push str.memory_exhausted
push eax
call fcn.1003c4f0
add esp, 8
mov esi, 2
jmp 0x1003bc79
xor esi, esi
jmp 0x1003bc79