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

Disassembly:
sub esp, 0xa0
push ebx
mov ebx, ecx
push ebp
push esi
imul esi, edx, 0x1608
mov eax, dword [ebx + 0x14]
push edi
mov edi, dword [ebx + 0x1c]
mov dword [esp + 0x88], ebx
mov ecx, dword [eax]
mov ebx, dword [ebx + 0x18]
mov eax, dword [edi + 0x4c]
mov dword [esp + 0x5c], edi
mov ebp, dword [ecx + 0x14]
mov dword [esp + 0x64], ecx
mov eax, dword [esi + eax + 0x15d0]
mov dword [esp + 0x1c], eax
mov eax, dword [ebx + 0x18]
mov dword [esp + 0x48], eax
mov eax, edx
xor edx, edx
mov ecx, dword [ebx]
div dword [edi + 0x18]
mov dword [esp + 0x14], ebp
mov edi, eax
mov eax, dword [esp + 0x5c]
mov esi, dword [eax + 0xc]
imul esi, edx
add esi, dword [eax + 4]
mov eax, dword [esp + 0x64]
cmp esi, ecx
cmova ecx, esi
xor edx, edx
mov dword [eax], ecx
mov eax, dword [esp + 0x5c]
mov ecx, dword [ebx + 8]
mov eax, dword [eax + 0xc]
add eax, esi
mov esi, dword [esp + 0x64]
adc edx, edx
neg edx
or edx, eax
cmp edx, ecx
cmovb ecx, edx
mov edx, dword [esp + 0x5c]
mov dword [esi + 8], ecx
mov eax, dword [ebx + 4]
mov ecx, dword [edx + 0x10]
imul ecx, edi
add ecx, dword [edx + 8]
cmp ecx, eax
cmova eax, ecx
mov dword [esi + 4], eax
mov eax, dword [edx + 0x10]
xor edx, edx
add eax, ecx
mov ecx, dword [ebx + 0xc]
adc edx, edx
neg edx
or edx, eax
mov eax, dword [esp + 0x1c]
cmp edx, ecx
cmovb ecx, edx
mov dword [esi + 0xc], ecx
cmp dword [eax + 4], 0
jne 0x102d9858
push str.tiles_require_at_least_one_resolution_n
push 1
push dword [esp + 0xbc]
call fcn.102c4df0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa0
ret
cmp dword [esi + 0x10], 0
mov dword [esp + 0x84], 0
jbe 0x102da235
mov ebx, dword [esp + 0x48]
mov dword [ebx + 0x24], 0
mov eax, dword [esi]
dec eax
add eax, dword [ebx]
cdq
idiv dword [ebx]
mov dword [ebp], eax
mov eax, dword [esi + 4]
dec eax
add eax, dword [ebx + 4]
cdq
idiv dword [ebx + 4]
mov dword [ebp + 4], eax
mov eax, dword [esi + 8]
dec eax
add eax, dword [ebx]
cdq
idiv dword [ebx]
mov dword [ebp + 8], eax
mov eax, dword [esi + 0xc]
dec eax
mov edi, dword [ebp + 8]
add eax, dword [ebx + 4]
cdq
idiv dword [ebx + 4]
mov esi, eax
mov dword [ebp + 0xc], esi
sub edi, dword [ebp]
je 0x102d98c9
or eax, 0xffffffff
xor edx, edx
div edi
mov ecx, esi
sub ecx, dword [ebp + 4]
cmp eax, ecx
jb 0x102da245
sub esi, dword [ebp + 4]
imul esi, edi
cmp esi, 0x3fffffff
ja 0x102da245
mov edi, dword [esp + 0x1c]
mov ecx, dword [esp + 0x5c]
shl esi, 2
mov eax, dword [edi + 4]
mov dword [ebp + 0x10], eax
mov eax, dword [edi + 4]
mov ecx, dword [ecx + 0x50]
cmp eax, ecx
jae 0x102d98ff
mov dword [ebp + 0x14], 1
jmp 0x102d9904
sub eax, ecx
mov dword [ebp + 0x14], eax
mov eax, dword [esp + 0x88]
mov dword [ebp + 0x28], esi
test byte [eax + 0x28], 1
je 0x102d9923
mov ecx, ebp
call fcn.102d96e0
test eax, eax
je 0x102da245
imul esi, dword [ebp + 0x10], 0x88
mov eax, dword [ebp + 0x18]
test eax, eax
jne 0x102d9958
test esi, esi
je 0x102d993f
push esi
call dword [sym.imp.MSVCR120.dll_malloc]
add esp, 4
mov dword [ebp + 0x18], eax
test eax, eax
je 0x102d984b
push esi
push 0
push eax
mov dword [ebp + 0x1c], esi
call sub.MSVCR120.dll_memset
jmp 0x102d998f
cmp esi, dword [ebp + 0x1c]
jbe 0x102d9992
test esi, esi
je 0x102da269
push esi
push eax
call dword [sym.imp.MSVCR120.dll_realloc]
add esp, 8
test eax, eax
je 0x102da269
mov ecx, esi
mov dword [ebp + 0x18], eax
sub ecx, dword [ebp + 0x1c]
add eax, dword [ebp + 0x1c]
push ecx
push 0
push eax
call sub.MSVCR120.dll_memset
mov dword [ebp + 0x1c], esi
add esp, 0xc
cmp dword [edi + 0x14], 0
lea eax, [edi + 0x1c]
mov ebx, dword [ebp + 0x10]
mov ecx, method.RC::RCDbFilerImpl.virtual_0
mov esi, dword [ebp + 0x18]
mov dword [esp + 0x54], eax
mov eax, 0x102db450
cmove eax, ecx
mov dword [esp + 0x28], esi
mov dword [esp + 0x90], eax
mov dword [esp + 0x38], 0
test ebx, ebx
je 0x102da1fd
jmp 0x102d99d0
dec ebx
xor edi, edi
xor ecx, ecx
mov dword [esp + 0x18], ebx
mov eax, ebx
bts edi, eax
cmp eax, 0x20
cmovae ecx, edi
xor edi, ecx
cmp eax, 0x40
mov eax, dword [ebp]
cmovae ecx, edi
cdq
add eax, edi
mov dword [esp + 0x24], ecx
mov dword [esp + 0x50], edi
adc edx, ecx
sub eax, 1
mov ecx, ebx
sbb edx, 0
call fcn.1033e2d0
mov dword [esi], eax
mov ecx, ebx
mov eax, dword [ebp + 4]
cdq
add eax, edi
adc edx, dword [esp + 0x24]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov dword [esi + 4], eax
mov ecx, ebx
mov eax, dword [ebp + 8]
cdq
add eax, edi
adc edx, dword [esp + 0x24]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov dword [esi + 8], eax
mov ecx, ebx
mov eax, dword [ebp + 0xc]
cdq
add eax, edi
adc edx, dword [esp + 0x24]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov edx, dword [esp + 0x1c]
mov edi, eax
mov ecx, dword [esp + 0x38]
mov ebx, dword [esi]
mov ebp, dword [esi + 4]
mov dword [esi + 0xc], edi
xor esi, esi
mov eax, dword [edx + ecx*4 + 0x32c]
mov ecx, dword [edx + ecx*4 + 0x3b0]
mov edx, ebx
mov dword [esp + 0x20], ecx
mov ecx, eax
sar edx, cl
shl edx, cl
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x2c], eax
mov eax, ebp
sar eax, cl
shl eax, cl
mov dword [esp + 0x4c], eax
mov eax, ecx
xor ecx, ecx
mov dword [esp + 0x60], edx
bts ecx, eax
cmp eax, 0x20
cmovae esi, ecx
xor ecx, esi
cmp eax, 0x40
mov eax, edi
cdq
cmovae esi, ecx
add eax, ecx
adc edx, esi
mov ecx, dword [esp + 0x20]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov edi, dword [esp + 0x28]
mov esi, eax
mov ecx, dword [esp + 0x20]
shl esi, cl
mov dword [esp + 0x44], esi
mov eax, dword [edi + 8]
cmp ebx, eax
jne 0x102d9ae4
mov edx, dword [esp + 0x2c]
xor eax, eax
jmp 0x102d9b27
mov ecx, dword [esp + 0x2c]
xor esi, esi
bts esi, ecx
cdq
xor edi, edi
cmp ecx, 0x20
cmovae edi, esi
xor esi, edi
cmp ecx, 0x40
cmovae edi, esi
add eax, esi
adc edx, edi
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov edx, dword [esp + 0x2c]
mov ecx, edx
mov esi, dword [esp + 0x44]
mov edi, dword [esp + 0x28]
shl eax, cl
sub eax, dword [esp + 0x60]
sar eax, cl
mov ecx, dword [esp + 0x20]
cmp ebp, dword [edi + 0xc]
mov ebp, dword [esp + 0x4c]
mov dword [edi + 0x10], eax
jne 0x102d9b37
xor esi, esi
jmp 0x102d9b3b
sub esi, ebp
sar esi, cl
mov dword [edi + 0x14], esi
imul esi, eax
mov dword [esp + 0x44], esi
lea ebx, [esi + esi*4]
shl ebx, 3
cmp dword [esp + 0x38], 0
mov dword [esp + 0x7c], ebx
jne 0x102d9b5f
mov dword [edi + 0x18], 1
jmp 0x102d9b9c
mov eax, dword [esp + 0x60]
cdq
add eax, 1
mov dword [edi + 0x18], 3
adc edx, 0
shrd eax, edx, 1
sar edx, 1
mov dword [esp + 0x60], eax
mov eax, ebp
cdq
add eax, 1
adc edx, 0
shrd eax, edx, 1
sar edx, 1
mov edx, dword [esp + 0x2c]
dec edx
mov dword [esp + 0x4c], eax
dec ecx
mov dword [esp + 0x2c], edx
mov dword [esp + 0x20], ecx
mov eax, dword [esp + 0x1c]
mov ebp, edx
mov dword [esp + 0x6c], 0
mov eax, dword [eax + 8]
cmp eax, edx
cmovb ebp, eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x40], ebp
mov eax, dword [eax + 0xc]
cmp eax, dword [esp + 0x20]
cmovb ecx, eax
mov eax, dword [esp + 0x28]
add edi, 0x1c
mov dword [esp + 0x68], ecx
mov dword [esp + 0x30], edi
cmp dword [eax + 0x18], 0
jbe 0x102da1d1
mov edx, 1
mov dword [esp + 0x74], edx
jmp 0x102d9bf0
cmp dword [esp + 0x38], 0
jne 0x102d9c8a
mov eax, dword [esp + 0x14]
mov ecx, dword [esp + 0x18]
mov dword [edi + 0x10], 0
mov eax, dword [eax]
cdq
add eax, dword [esp + 0x50]
adc edx, dword [esp + 0x24]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov ecx, dword [esp + 0x18]
mov dword [edi], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 4]
cdq
add eax, dword [esp + 0x50]
adc edx, dword [esp + 0x24]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov ecx, dword [esp + 0x18]
mov dword [edi + 4], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 8]
cdq
add eax, dword [esp + 0x50]
adc edx, dword [esp + 0x24]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov ecx, dword [esp + 0x18]
mov dword [edi + 8], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 0xc]
cdq
add eax, dword [esp + 0x50]
adc edx, dword [esp + 0x24]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
jmp 0x102d9d8d
mov eax, edx
mov dword [edi + 0x10], edx
mov edi, dword [esp + 0x18]
and eax, 1
mov esi, edx
mov ecx, edi
cdq
shr esi, 1
call fcn.1033e2b0
mov ebx, eax
lea ecx, [edi + 1]
xor eax, eax
xor edi, edi
bts edi, ecx
mov ebp, edx
cmp ecx, 0x20
cmovae eax, edi
xor edi, eax
cmp ecx, 0x40
mov dword [esp + 0x3c], edi
cmovae eax, edi
mov dword [esp + 0x34], eax
mov eax, dword [esp + 0x14]
mov eax, dword [eax]
cdq
sub eax, ebx
sbb edx, ebp
add eax, edi
mov edi, dword [esp + 0x18]
adc edx, dword [esp + 0x34]
sub eax, 1
sbb edx, 0
lea ecx, [edi + 1]
call fcn.1033e2d0
mov ecx, dword [esp + 0x30]
mov dword [ecx], eax
mov eax, esi
cdq
mov ecx, edi
call fcn.1033e2b0
mov esi, eax
mov edi, edx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x58], esi
mov eax, dword [eax + 4]
cdq
sub eax, esi
mov esi, dword [esp + 0x18]
sbb edx, edi
add eax, dword [esp + 0x3c]
adc edx, dword [esp + 0x34]
lea ecx, [esi + 1]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov ecx, dword [esp + 0x30]
mov dword [ecx + 4], eax
lea ecx, [esi + 1]
mov eax, dword [esp + 0x14]
mov eax, dword [eax + 8]
cdq
sub eax, ebx
sbb edx, ebp
add eax, dword [esp + 0x3c]
adc edx, dword [esp + 0x34]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov ecx, dword [esp + 0x30]
mov dword [ecx + 8], eax
mov ecx, esi
mov eax, dword [esp + 0x14]
lea ecx, [ecx + 1]
mov eax, dword [eax + 0xc]
cdq
sub eax, dword [esp + 0x58]
sbb edx, edi
add eax, dword [esp + 0x3c]
adc edx, dword [esp + 0x34]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov edi, dword [esp + 0x30]
mov ebx, dword [esp + 0x7c]
mov esi, dword [esp + 0x44]
mov ebp, dword [esp + 0x40]
push dword [edi + 0x10]
mov dword [edi + 0xc], eax
call dword [esp + 0x94]
mov ecx, dword [esp + 0x4c]
add esp, 4
mov edx, dword [esp + 0x54]
movsd xmm0, qword [0x10588b70]
mov ecx, dword [ecx + 0x18]
sub ecx, dword [edx]
add ecx, eax
movd xmm1, ecx
cvtdq2pd xmm1, xmm1
call sub.MSVCR120.dll__libm_sse2_pow_precise
mov eax, dword [esp + 0x54]
mov ecx, dword [esp + 0x1c]
movd xmm1, dword [eax + 4]
cvtdq2pd xmm1, xmm1
mulsd xmm1, qword [0x10588938]
addsd xmm1, qword [0x10588b18]
mulsd xmm0, xmm1
cvtsd2ss xmm0, xmm0
mulss xmm0, dword [0x1058891c]
movss dword [edi + 0x20], xmm0
mov eax, dword [eax]
mov ecx, dword [ecx + 0x324]
dec eax
add eax, ecx
mov dword [edi + 0x1c], eax
mov eax, dword [edi + 0x14]
test eax, eax
jne 0x102d9e2c
test esi, esi
je 0x102d9e2c
test ebx, ebx
je 0x102d9e1e
push ebx
call dword [sym.imp.MSVCR120.dll_malloc]
add esp, 4
mov dword [edi + 0x14], eax
test eax, eax
je 0x102d984b
push ebx
jmp 0x102d9e58
cmp dword [edi + 0x18], ebx
jae 0x102d9e66
test ebx, ebx
je 0x102da2a7
push ebx
push eax
call dword [sym.imp.MSVCR120.dll_realloc]
add esp, 8
test eax, eax
je 0x102da2a7
mov ecx, ebx
mov dword [edi + 0x14], eax
sub ecx, dword [edi + 0x18]
add eax, dword [edi + 0x18]
push ecx
push 0
push eax
call sub.MSVCR120.dll_memset
mov dword [edi + 0x18], ebx
add esp, 0xc
mov ebx, dword [edi + 0x14]
xor edx, edx
mov dword [esp + 0x58], edx
test esi, esi
je 0x102da19e
mov ecx, dword [esp + 0x2c]
mov esi, 1
shl esi, cl
mov eax, 1
mov ecx, dword [esp + 0x20]
shl eax, cl
xor ecx, ecx
mov dword [esp + 0x98], eax
mov eax, ebp
bts ecx, eax
mov dword [esp + 0xa0], esi
xor ebp, ebp
cmp eax, 0x20
cmovae ebp, ecx
xor ecx, ebp
cmp eax, 0x40
mov eax, dword [esp + 0x68]
cmovae ebp, ecx
mov dword [esp + 0xa8], ecx
xor ecx, ecx
mov dword [esp + 0x8c], ebp
xor ebp, ebp
bts ecx, eax
cmp eax, 0x20
cmovae ebp, ecx
xor ecx, ebp
cmp eax, 0x40
mov dword [esp + 0x94], ecx
cmovae ebp, ecx
mov dword [esp + 0x9c], ebp
jmp 0x102d9ef7
mov esi, dword [esp + 0xa0]
mov ecx, dword [esp + 0x28]
mov eax, edx
xor edx, edx
mov ebp, dword [esp + 0x98]
div dword [ecx + 0x10]
imul edx, esi
imul eax, ebp
add edx, dword [esp + 0x60]
add eax, dword [esp + 0x4c]
lea ecx, [esi + edx]
lea esi, [eax + ebp]
mov ebp, dword [edi]
cmp edx, ebp
cmovg ebp, edx
mov dword [ebx], ebp
mov edx, dword [edi + 4]
cmp eax, edx
cmovg edx, eax
mov dword [ebx + 4], edx
mov eax, dword [edi + 8]
cmp ecx, eax
cmovl eax, ecx
mov dword [ebx + 8], eax
mov edi, dword [edi + 0xc]
cmp esi, edi
cmovl edi, esi
mov esi, dword [esp + 0x40]
mov ecx, esi
mov dword [ebx + 0xc], edi
sar ebp, cl
shl ebp, cl
mov ecx, dword [esp + 0x68]
sar edx, cl
shl edx, cl
mov ecx, esi
mov dword [esp + 0x3c], edx
cdq
add eax, dword [esp + 0xa8]
mov dword [esp + 0xa4], ebp
adc edx, dword [esp + 0x8c]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov ecx, dword [esp + 0x40]
mov esi, eax
shl esi, cl
mov eax, edi
mov edi, dword [esp + 0x68]
sub esi, ebp
sar esi, cl
mov ecx, edi
cdq
add eax, dword [esp + 0x94]
mov dword [ebx + 0x10], esi
adc edx, dword [esp + 0x9c]
sub eax, 1
sbb edx, 0
call fcn.1033e2d0
mov ebp, eax
mov ecx, edi
mov eax, dword [ebx + 0x18]
shl ebp, cl
sub ebp, dword [esp + 0x3c]
sar ebp, cl
mov dword [ebx + 0x14], ebp
imul ebp, esi
mov dword [esp + 0xac], ebp
lea esi, [ebp*8]
sub esi, ebp
shl esi, 3
test eax, eax
jne 0x102d9ffd
test ebp, ebp
je 0x102d9ffd
test esi, esi
je 0x102d9fef
push esi
call dword [sym.imp.MSVCR120.dll_malloc]
add esp, 4
mov dword [ebx + 0x18], eax
test eax, eax
je 0x102d984b
push esi
jmp 0x102da029
cmp esi, dword [ebx + 0x1c]
jbe 0x102da037
test esi, esi
je 0x102da2e5
push esi
push eax
call dword [sym.imp.MSVCR120.dll_realloc]
add esp, 8
test eax, eax
je 0x102da2e5
mov ecx, esi
mov dword [ebx + 0x18], eax
sub ecx, dword [ebx + 0x1c]
add eax, dword [ebx + 0x1c]
push ecx
push 0
push eax
call sub.MSVCR120.dll_memset
mov dword [ebx + 0x1c], esi
add esp, 0xc
mov ecx, dword [ebx + 0x20]
mov esi, dword [esp + 0xb4]
push esi
test ecx, ecx
jne 0x102da056
mov edx, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x10]
call fcn.102e61c0
add esp, 4
jmp 0x102da064
push dword [ebx + 0x14]
mov edx, dword [ebx + 0x10]
call fcn.102e63c0
add esp, 8
mov dword [ebx + 0x20], eax
test eax, eax
jne 0x102da07b
push str.No_incltree_created._n
push 2
push esi
call fcn.102c4df0
add esp, 0xc
mov ecx, dword [ebx + 0x24]
push esi
test ecx, ecx
jne 0x102da093
mov edx, dword [ebx + 0x14]
mov ecx, dword [ebx + 0x10]
call fcn.102e61c0
add esp, 4
jmp 0x102da0a1
push dword [ebx + 0x14]
mov edx, dword [ebx + 0x10]
call fcn.102e63c0
add esp, 8
mov dword [ebx + 0x24], eax
test eax, eax
jne 0x102da0b8
push str.No_imsbtree_created._n
push 2
push esi
call fcn.102c4df0
add esp, 0xc
xor eax, eax
mov dword [esp + 0x34], eax
test ebp, ebp
je 0x102da182
mov ecx, dword [esp + 0x40]
mov esi, 1
shl esi, cl
mov ebp, 1
mov ecx, edi
mov dword [esp + 0x70], esi
shl ebp, cl
xor ecx, ecx
mov dword [esp + 0x80], ebp
mov dword [esp + 0x78], ecx
jmp 0x102da0f0
xor edx, edx
mov edi, esi
div dword [ebx + 0x10]
mov esi, dword [ebx + 0x18]
imul edi, edx
add esi, ecx
imul ebp, eax
mov ecx, esi
add edi, dword [esp + 0xa4]
add ebp, dword [esp + 0x3c]
call fcn.102da310
test eax, eax
je 0x102d984b
mov eax, dword [ebx]
cmp edi, eax
mov ecx, dword [esp + 0x70]
cmovg eax, edi
mov dword [esi + 8], eax
mov eax, dword [ebx + 4]
cmp ebp, eax
cmovg eax, ebp
add ecx, edi
mov dword [esi + 0xc], eax
mov eax, dword [ebx + 8]
cmp ecx, eax
cmovl eax, ecx
mov ecx, dword [esp + 0x80]
add ecx, ebp
mov dword [esi + 0x10], eax
mov eax, dword [ebx + 0xc]
cmp ecx, eax
mov ebp, dword [esp + 0x80]
cmovl eax, ecx
mov ecx, dword [esp + 0x78]
mov dword [esi + 0x14], eax
add ecx, 0x38
mov eax, dword [esp + 0x34]
mov esi, dword [esp + 0x70]
inc eax
mov dword [esp + 0x34], eax
mov dword [esp + 0x78], ecx
cmp eax, dword [esp + 0xac]
jb 0x102da0f0
mov edx, dword [esp + 0x58]
add ebx, 0x28
mov esi, dword [esp + 0x44]
inc edx
mov edi, dword [esp + 0x30]
mov dword [esp + 0x58], edx
cmp edx, esi
jb 0x102d9ef0
mov ecx, dword [esp + 0x6c]
add edi, 0x24
mov eax, dword [esp + 0x28]
inc ecx
mov edx, dword [esp + 0x74]
add dword [esp + 0x54], 8
inc edx
mov ebx, dword [esp + 0x7c]
mov ebp, dword [esp + 0x40]
mov dword [esp + 0x30], edi
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x74], edx
cmp ecx, dword [eax + 0x18]
jb 0x102d9bf0
mov eax, dword [esp + 0x38]
mov ebp, dword [esp + 0x14]
inc eax
mov esi, dword [esp + 0x28]
mov ebx, dword [esp + 0x18]
add esi, 0x88
mov dword [esp + 0x28], esi
mov dword [esp + 0x38], eax
cmp eax, dword [ebp + 0x10]
jb 0x102d99d0
mov edi, dword [esp + 0x1c]
mov eax, dword [esp + 0x84]
add edi, 0x438
mov esi, dword [esp + 0x64]
inc eax
mov ebx, dword [esp + 0x48]
add ebp, 0x34
add ebx, 0x34
mov dword [esp + 0x1c], edi
mov dword [esp + 0x14], ebp
mov dword [esp + 0x48], ebx
mov dword [esp + 0x84], eax
cmp eax, dword [esi + 0x10]
jb 0x102d9871
mov eax, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa0
ret
push str.Not_enough_memory_for_tile_data_n
mov eax, dword [esp + 0xb8]
push 1
push eax
call fcn.102c4df0
add esp, 0xc
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa0
ret
mov eax, dword [esp + 0xb4]
push str.Not_enough_memory_for_tile_resolutions_n
push 1
push eax
call fcn.102c4df0
add esp, 0xc
push dword [ebp + 0x18]
call dword [sym.imp.MSVCR120.dll_free]
add esp, 4
mov dword [ebp + 0x18], 0
mov dword [ebp + 0x1c], 0
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa0
ret
mov eax, dword [esp + 0xb4]
push str.Not_enough_memory_to_handle_band_precints_n
push 1
push eax
call fcn.102c4df0
add esp, 0xc
push dword [edi + 0x14]
call dword [sym.imp.MSVCR120.dll_free]
add esp, 4
mov dword [edi + 0x14], 0
mov dword [edi + 0x18], 0
xor eax, eax
pop edi
pop esi
pop ebp
pop ebx
add esp, 0xa0
ret
push dword [ebx + 0x18]
call dword [sym.imp.MSVCR120.dll_free]
add esp, 4
mov dword [ebx + 0x18], 0
mov dword [ebx + 0x1c], 0
push str.Not_enough_memory_for_current_precinct_codeblock_element_n
jmp 0x102da24a