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

Disassembly:
push ebp
mov ebp, esp
and esp, 0xffffffc0
sub esp, 0x234
mov eax, dword [0x10178d58]
xor eax, esp
mov dword [esp + 0x230], eax
mov ecx, dword [str.CDEFGHJKLMNPQRSTUVWX]
mov dword [esp + 0x190], ecx
mov ecx, dword [0x1017192c]
mov dword [esp + 0x194], ecx
mov ecx, dword [0x10171930]
mov dword [esp + 0x198], ecx
mov ecx, dword [0x10171934]
mov dword [esp + 0x19c], ecx
mov ecx, dword [0x10171938]
mov dword [esp + 0x1a0], ecx
movzx ecx, byte [0x1017193c]
mov byte [esp + 0x1a4], cl
push ebx
push esi
push edi
mov ecx, 7
mov esi, str.ABCDEFGHJKLMNPQRSTUVWXYZ
lea edi, [esp + 0x1fc]
rep movsd dword es:[edi], dword [esi]
mov ecx, 9
mov esi, str.ABCDEFGHJKLMNPQRSTUVABCDEFGHJKLMNPQ
lea edi, [esp + 0x218]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [str.RSTUXYZABCFGHJ]
mov dword [esp + 0x174], ecx
mov ecx, dword [0x101718dc]
mov dword [esp + 0x178], ecx
mov ecx, dword [0x101718e0]
mov dword [esp + 0x17c], ecx
movzx ecx, word [0x101718e4]
mov word [esp + 0x180], cx
movzx ecx, byte [0x101718e6]
mov byte [esp + 0x182], cl
mov ecx, dword [str.ABCDEFGHJKLMNP]
mov dword [esp + 0x184], ecx
mov ecx, dword [0x101718cc]
mov dword [esp + 0x188], ecx
mov ecx, dword [0x101718d0]
mov dword [esp + 0x18c], ecx
movzx ecx, word [0x101718d4]
mov word [esp + 0x190], cx
movzx ecx, byte [0x101718d6]
mov eax, dword [ebp + 0x10]
mov byte [esp + 0x192], cl
mov edx, dword [ebp + 0x20]
mov ecx, 6
mov esi, str.JKLPQRSTUXYZABCFGHJKLPQR
lea edi, [esp + 0x1c4]
rep movsd dword es:[edi], dword [esi]
mov ebx, dword [ebp + 8]
movsb byte es:[edi], byte [esi]
mov ecx, 6
mov esi, 0x1016e990
lea edi, [esp + 0x1e0]
rep movsd dword es:[edi], dword [esi]
mov ecx, dword [ebp + 0xc]
mov dword [esp + 0x84], eax
xor eax, eax
test ecx, ecx
mov dword [esp + 0x38], edx
mov dword [esp + 0x58], eax
mov dword [esp + 0x64], eax
mov dword [esp + 0x70], eax
mov dword [esp + 0x78], eax
movsb byte es:[edi], byte [esi]
jle 0x100b9ded
nop
mov esi, dword [edx + eax*4]
add eax, 1
cmp eax, ecx
mov byte [esi], 0
jl 0x100b9de0
mov esi, dword [ebp + 0x14]
test esi, esi
jge 0x100b9df8
xor esi, esi
jmp 0x100b9e02
cmp esi, 8
jle 0x100b9e05
mov esi, 8
mov dword [ebp + 0x14], esi
fldz
mov edx, 5
fst qword [esp + 0xa0]
sub edx, esi
fstp qword [esp + 0xa8]
mov dword [esp + 0x1c], edx
fld qword [0x1015fd40]
fild dword [esp + 0x1c]
call sub.MSVCR80.dll__CIpow
fst qword [esp + 0xb8]
fmul qword [0x100dc320]
xor edi, edi
cmp esi, edi
fstp qword [esp + 0xd0]
jle 0x100b9e60
push esi
lea eax, [esp + 0x198]
push str.__0_dd
push eax
call dword [sym.imp.MSVCR80.dll_sprintf]
add esp, 0xc
mov cx, word [0x101718a8]
mov dl, byte [0x101718aa]
push ebx
mov word [esp + 0x18], 0x2d
mov word [esp + 0x30], cx
mov byte [esp + 0x32], dl
call sym.pe.dll_pe_geogcs_datum
push eax
mov dword [esp + 0x20], eax
call sym.pe.dll_pe_datum_spheroid
push ebx
mov esi, eax
call sym.pe.dll_pe_geogcs_unit
push eax
call sym.pe.dll_pe_unit_factor
fstp qword [esp + 0xe8]
push esi
call sym.pe.dll_pe_spheroid_axis
fstp qword [esp + 0xd8]
push esi
call sym.pe.dll_pe_spheroid_flattening
fld qword [0x100dc370]
fsub st(1)
sub esp, 8
fmulp st(1)
fstp qword [esp + 0xe8]
fld1
fstp qword [esp]
push str.Meter
call sym.pe.dll_pe_unit_new
fldz
mov ecx, dword [ebp + 0x1c]
fst qword [esp + 0x100]
fst qword [esp + 0x120]
mov dword [esp + 0x9c], eax
fld1
lea eax, [ecx - 1]
cmp eax, 0xb
fstp qword [esp + 0x118]
mov dword [esp + 0x60], edi
mov dword [esp + 0x5c], edi
mov dword [esp + 0x4c], 0xffffffff
fst qword [esp + 0xf0]
mov dword [esp + 0x7c], edi
fstp qword [esp + 0xf8]
ja case.0x100b9f2c.3
movzx eax, byte [eax + 0x100ba9f0]
jmp dword [eax*4 + 0x100ba9dc]
mov dword [esp + 0x24], edi
mov dword [esp + 0x3c], edi
jmp 0x100ba07b
mov dword [esp + 0x24], 1
mov dword [esp + 0x3c], edi
jmp 0x100ba07b
mov dword [esp + 0x24], edi
mov dword [esp + 0x3c], 1
jmp 0x100ba07b
mov eax, 1
mov dword [esp + 0x24], eax
mov dword [esp + 0x3c], eax
jmp 0x100ba07b
cmp ecx, 0xa
mov dword [esp + 0x24], edi
jne 0x100b9f85
mov dword [esp + 0x3c], 1
mov eax, dword [0x101781ec]
cmp eax, edi
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], edi
jle 0x100ba07b
mov edi, str.SPHEROID__Clarke_1866__6378206.4_294.9786982_
nop
push edi
call sym.pe.dll_pe_spheroid_from_string
mov ebx, eax
push ebx
push esi
call sym.pe.dll_pe_spheroid_eq
test eax, eax
push ebx
jne 0x100b9fd5
call sym.pe.dll_pe_spheroid_del
mov eax, dword [esp + 0x18]
add eax, 1
add edi, 0x400
cmp eax, dword [esp + 0x20]
mov dword [esp + 0x18], eax
jl 0x100b9fa0
jmp 0x100ba07b
call sym.pe.dll_pe_spheroid_del
mov eax, dword [esp + 0x18]
test eax, eax
jne 0x100b9ff3
mov ecx, dword [0x101781f0]
mov edi, 0x10171740
mov dword [esp + 0x20], ecx
jmp 0x100ba017
cmp eax, 3
jge 0x100ba009
mov edx, dword [0x101781f4]
mov edi, 0x10171788
mov dword [esp + 0x20], edx
jmp 0x100ba017
mov eax, dword [0x101781f8]
mov edi, 0x101717c8
mov dword [esp + 0x20], eax
xor esi, esi
cmp dword [esp + 0x20], esi
mov dword [esp + 0x24], esi
jle 0x100ba07b
cmp dword [esp + 0x24], 0
jne 0x100ba07b
mov ecx, dword [edi + esi*8 + 4]
shl ecx, 0xa
add ecx, str.SPHEROID__Clarke_1866__6378206.4_294.9786982_
push ecx
call sym.pe.dll_pe_spheroid_from_string
mov edx, dword [edi + esi*8]
push eax
push edx
call sym.pe.dll_pe_datum_new
mov ebx, eax
mov eax, dword [esp + 0x1c]
push ebx
push eax
call sym.pe.dll_pe_datum_eq
test eax, eax
je 0x100ba06c
cmp dword [esp + 0x18], 0
mov eax, 1
mov dword [esp + 0x24], eax
jne 0x100ba06c
mov dword [esp + 0x7c], eax
push ebx
call sym.pe.dll_pe_datum_del
add esi, 1
cmp esi, dword [esp + 0x20]
jl 0x100ba023
xor eax, eax
cmp dword [ebp + 0xc], eax
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], eax
jle 0x100ba9a4
mov edi, edi
mov ecx, dword [esp + 0x18]
fld qword [esp + 0xe8]
mov edx, dword [esp + 0x84]
fld st(0)
shl ecx, 4
fmul qword [ecx + edx]
lea eax, [ecx + edx]
fld qword [eax + 8]
sub esp, 8
fmulp st(2)
fxch st(1)
fstp qword [esp + 0x48]
fstp qword [esp]
call sym.pe.dll_pe_delta
cmp dword [esp + 0x3c], 0
fst qword [esp + 0x30]
je 0x100ba16c
fld st(0)
fld qword [0x100dc570]
fsub st(1), st(0)
fldz
fcom st(2)
fnstsw ax
fxch st(2)
test ah, 0x41
jne 0x100ba0eb
fchs
fxch st(3)
fcom st(2)
fnstsw ax
fld st(0)
test ah, 5
jp 0x100ba0fa
fchs
faddp st(2)
fxch st(1)
fmul qword [0x100dc320]
fadd qword [0x100dc310]
fmul qword [0x100dc318]
fcomp st(3)
fnstsw ax
fstp st(2)
test ah, 1
jne 0x100ba129
fstp st(1)
fld qword [0x100dc568]
fst qword [esp + 0x30]
fxch st(1)
fld st(1)
fld qword [0x100dd1e0]
fmul st(1), st(0)
fmul qword [esp + 0x40]
fld qword [0x1015b5b8]
fcom st(1)
fnstsw ax
test ah, 5
jnp 0x100ba38e
fld qword [0x101523d8]
fcomp st(2)
fnstsw ax
test ah, 0x41
je 0x100ba38e
fxch st(1)
fcom st(3)
fnstsw ax
test ah, 5
jp 0x100ba170
xor edi, edi
jmp 0x100ba175
fldz
jmp 0x100ba129
mov edi, 1
fld st(2)
fadd qword [0x100ddaf0]
fdiv qword [0x1015ba48]
call fcn.100db3f0
mov ebx, 1
sub ebx, eax
cmp ebx, 0x3c
jle 0x100ba199
mov ebx, 0x3c
fld qword [0x10153f90]
fcomp st(1)
fnstsw ax
test ah, 0x41
jp 0x100ba1e1
fld qword [0x1016f630]
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x100ba1e1
cmp ebx, 0x1f
fstp st(1)
jne 0x100ba25f
fld qword [0x100dc650]
fcomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x41
jp 0x100ba261
mov ebx, 0x20
jmp 0x100ba261
fld qword [0x1015ab68]
fcomp st(1)
fnstsw ax
test ah, 0x41
jp 0x100ba259
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 0x41
jp 0x100ba25f
cmp ebx, 0x20
jne 0x100ba218
fld qword [0x1015b230]
fcomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x100ba22e
mov ebx, 0x1f
jmp 0x100ba261
cmp ebx, 0x22
jne 0x100ba235
fld qword [0x1015ab70]
fcomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x100ba24b
mov ebx, 0x21
jmp 0x100ba261
cmp ebx, 0x24
jne 0x100ba25f
fld qword [0x10160488]
fcomp st(2)
fnstsw ax
fstp st(1)
test ah, 0x41
jne 0x100ba252
mov ebx, 0x23
jmp 0x100ba261
mov ebx, 0x25
jmp 0x100ba261
fstp st(2)
fstp st(0)
jmp 0x100ba261
fstp st(1)
fadd qword [0x101606a8]
fmul qword [0x101718a0]
call fcn.100db3f0
cmp eax, 0x13
jle 0x100ba27c
mov eax, 0x13
cmp ebx, dword [esp + 0x5c]
mov al, byte [esp + eax + 0x19c]
mov byte [esp + 0x14], al
jne 0x100ba297
cmp edi, dword [esp + 0x4c]
je 0x100ba45a
test edi, edi
fld qword [0x100dcf20]
fstp qword [esp + 0xb0]
je 0x100ba2b1
fst qword [esp + 0x90]
jmp 0x100ba2be
fld qword [0x100dcf18]
fstp qword [esp + 0x90]
cmp ebx, 0xa
fld qword [0x100dcf10]
fstp qword [esp + 0xc0]
lea ecx, [ebx - 0x1f]
mov dword [esp + 0x1c], ecx
fstp qword [esp + 0x88]
mov byte [esp + 0x2a], 0
fild dword [esp + 0x1c]
fmul qword [0x100dc628]
fadd qword [0x100dc650]
fmul qword [0x1016cb38]
fstp qword [esp + 0xc8]
jge 0x100ba310
mov dl, bl
add dl, 0x30
mov byte [esp + 0x28], 0x30
mov byte [esp + 0x29], dl
jmp 0x100ba339
mov eax, 0x66666667
imul ebx
sar edx, 2
mov eax, edx
shr eax, 0x1f
add eax, edx
mov cl, al
mov dl, 0xa
imul dl
add cl, 0x30
mov byte [esp + 0x28], cl
mov cl, bl
sub cl, al
add cl, 0x30
mov byte [esp + 0x29], cl
cmp dword [esp + 0x60], 1
je 0x100ba45c
mov edx, dword [esp + 0x58]
fstp st(0)
push edx
call sym.pe.dll_pe_projection_del
push 0xa7fe
call fcn.100d0800
mov esi, eax
add esp, 4
push esi
mov dword [esp + 0x5c], esi
call sym.pe.dll_pe_projection_forward
push esi
mov dword [esp + 0x84], eax
call fcn.100cfd60
fld qword [esp + 0x34]
add esp, 4
mov dword [esp + 0x74], eax
mov dword [esp + 0x60], 1
jmp 0x100ba45c
fstp st(2)
fstp st(1)
fcom st(1)
fnstsw ax
test ah, 5
jp 0x100ba39f
xor edi, edi
jmp 0x100ba3a4
mov edi, 1
mov ebx, edi
neg ebx
sbb ebx, ebx
add ebx, 0xffffffff
cmp ebx, dword [esp + 0x5c]
jne 0x100ba3bd
cmp edi, dword [esp + 0x4c]
je 0x100ba458
fld qword [0x100dce20]
fst qword [esp + 0xb0]
fstp qword [esp + 0x90]
fld qword [0x1015e5e0]
fstp qword [esp + 0xc0]
fxch st(1)
fst qword [esp + 0xc8]
fcompp
fnstsw ax
test ah, 0x41
jp 0x100ba3f8
fld qword [0x100dc4b8]
jmp 0x100ba3fe
fld qword [0x100dc4b0]
cmp dword [esp + 0x60], 2
fstp qword [esp + 0x88]
mov byte [esp + 0x28], 0
je 0x100ba45c
mov eax, dword [esp + 0x58]
fstp st(0)
push eax
call sym.pe.dll_pe_projection_del
push 0xa812
call fcn.100d0800
mov esi, eax
add esp, 4
push esi
mov dword [esp + 0x5c], esi
call sym.pe.dll_pe_projection_forward
push esi
mov dword [esp + 0x84], eax
call fcn.100cfd60
fld qword [esp + 0x34]
add esp, 4
mov dword [esp + 0x74], eax
mov dword [esp + 0x60], 2
jmp 0x100ba45c
fstp st(0)
fstp st(0)
cmp ebx, dword [esp + 0x5c]
jne 0x100ba46c
cmp edi, dword [esp + 0x4c]
je 0x100ba4ff
mov ecx, dword [esp + 0x64]
fstp st(0)
fld qword [esp + 0xc8]
push ecx
fstp qword [esp + 0x104]
fld qword [esp + 0x8c]
fstp qword [esp + 0x124]
fld qword [esp + 0xc4]
fstp qword [esp + 0x11c]
fld qword [esp + 0xb4]
fstp qword [esp + 0xf4]
fld qword [esp + 0x94]
fstp qword [esp + 0xfc]
call fcn.100c3250
call fcn.100c3230
mov esi, eax
lea edx, [esp + 0xf4]
push edx
lea eax, [esp + 0xe0]
push eax
push esi
mov dword [esp + 0x74], esi
call dword [esp + 0x84]
push esi
call fcn.100c3280
push esi
mov dword [esp + 0x90], eax
call fcn.100c32a0
fld qword [esp + 0x48]
add esp, 0x18
mov dword [esp + 0x70], eax
mov ecx, dword [esp + 0x70]
fstp qword [esp + 0xa0]
mov edx, dword [esp + 0x78]
fld qword [esp + 0x40]
push ecx
fstp qword [esp + 0xac]
push edx
lea eax, [esp + 0xa8]
push eax
push 1
lea ecx, [esp + 0x100]
push ecx
lea edx, [esp + 0xec]
push edx
mov dword [esp + 0x74], ebx
mov dword [esp + 0x64], edi
call dword [esp + 0x98]
fld qword [esp + 0x108]
fadd qword [esp + 0xb8]
xor esi, esi
add esp, 0x18
cmp dword [ebp + 0x18], esi
fst qword [esp + 0x40]
fld qword [esp + 0xf8]
fadd qword [esp + 0xa8]
fst qword [esp + 0x30]
je 0x100ba582
fld qword [esp + 0xd0]
fadd st(2), st(0)
faddp st(1)
jmp 0x100ba676
fldz
fcom st(2)
fnstsw ax
fld st(2)
test ah, 0x41
jne 0x100ba591
fchs
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jnp 0x100ba5fc
fstp st(1)
fcomp st(1)
fnstsw ax
test ah, 0x41
jne 0x100ba5a9
fchs
call sub.MSVCR80.dll__CIlog10
call fcn.100db3f0
fldz
fcomp qword [esp + 0x40]
mov ecx, eax
fnstsw ax
test ah, 0x41
jp 0x100ba5ca
fld qword [0x100dc610]
jmp 0x100ba5d0
fld qword [0x1015bb78]
add ecx, 0xfffffff0
fstp qword [esp + 0x50]
fld qword [0x1015fd40]
mov dword [esp + 0x1c], ecx
fild dword [esp + 0x1c]
call sub.MSVCR80.dll__CIpow
fmul qword [esp + 0x50]
fadd qword [esp + 0x40]
fst qword [esp + 0x40]
fld qword [esp + 0x30]
fldz
fcom st(1)
fnstsw ax
fld st(1)
test ah, 0x41
jne 0x100ba609
fchs
fld st(1)
fucompp
fnstsw ax
test ah, 0x44
jnp 0x100ba711
fstp st(2)
fcom st(1)
fnstsw ax
fstp st(1)
test ah, 5
jp 0x100ba627
fchs
call sub.MSVCR80.dll__CIlog10
call fcn.100db3f0
fldz
fcomp qword [esp + 0x30]
mov ecx, eax
fnstsw ax
test ah, 0x41
jp 0x100ba648
fld qword [0x100dc610]
jmp 0x100ba64e
fld qword [0x1015bb78]
add ecx, 0xfffffff0
fstp qword [esp + 0x50]
fld qword [0x1015fd40]
mov dword [esp + 0x1c], ecx
fild dword [esp + 0x1c]
call sub.MSVCR80.dll__CIpow
fmul qword [esp + 0x50]
fadd qword [esp + 0x30]
fld qword [esp + 0x40]
fxch st(1)
cmp ebx, esi
jle 0x100ba73a
lea eax, [esp + 0x1fc]
mov dword [esp + 0x6c], eax
lea ecx, [esp + 0x218]
mov dword [esp + 0x50], ecx
lea eax, [ebx - 1]
cdq
mov ecx, 6
idiv ecx
mov eax, 0x55555556
mov ecx, edx
imul ecx
mov eax, edx
shr eax, 0x1f
add eax, edx
lea edx, [eax + eax*2]
mov eax, ecx
sub eax, edx
and ecx, 0x80000001
lea eax, [eax + eax*8]
mov dword [esp + 0x1c], eax
jns 0x100ba6ca
dec ecx
or ecx, 0xfffffffe
inc ecx
neg ecx
sbb ecx, ecx
and ecx, 5
cmp dword [esp + 0x24], esi
mov dword [esp + 0x68], ecx
je 0x100ba6f2
cmp dword [esp + 0x7c], esi
je 0x100ba6eb
cmp ebx, 0x2f
jl 0x100ba6eb
cmp ebx, 0x37
jle 0x100ba6f2
add ecx, 0xa
mov dword [esp + 0x68], ecx
cmp byte [esp + 0x14], 0x4d
jne 0x100ba71a
fld qword [0x100dcf18]
fcom st(1)
fnstsw ax
test ah, 0x41
jp 0x100ba718
mov byte [esp + 0x14], 0x4e
fsubp st(1)
jmp 0x100ba71a
fstp st(0)
jmp 0x100ba676
fstp st(0)
fld st(0)
fld qword [0x100dce20]
fdiv st(1), st(0)
fxch st(1)
call fcn.100db3f0
mov dword [esp + 0x40], eax
fild dword [esp + 0x40]
fmulp st(1)
jmp 0x100ba7b4
cmp edi, esi
fld qword [0x100dce20]
mov dword [esp + 0x1c], esi
fcomp st(2)
mov dword [esp + 0x68], esi
je 0x100ba781
fnstsw ax
lea ecx, [esp + 0x174]
lea edx, [esp + 0x184]
test ah, 0x41
mov dword [esp + 0x6c], ecx
mov dword [esp + 0x50], edx
mov word [esp + 0x14], 0x59
je 0x100ba779
mov word [esp + 0x14], 0x5a
fld qword [0x10166ca8]
jmp 0x100ba7b2
lea eax, [esp + 0x1c4]
mov dword [esp + 0x6c], eax
fnstsw ax
lea ecx, [esp + 0x1e0]
test ah, 0x41
mov dword [esp + 0x50], ecx
mov word [esp + 0x14], 0x41
je 0x100ba7ac
mov word [esp + 0x14], 0x42
fld qword [0x1015f6d8]
fsub st(2), st(0)
fsubp st(1)
lea eax, [esp + 0x28]
mov ecx, eax
fst qword [esp + 0x30]
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x100ba7c0
mov edx, dword [esp + 0x38]
sub eax, ecx
mov esi, ecx
mov ecx, dword [esp + 0x18]
mov edi, dword [edx + ecx*4]
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x100ba7db
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
lea eax, [esp + 0x14]
rep movsb byte es:[edi], byte [esi]
mov ecx, eax
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x100ba7f9
mov ebx, dword [esp + 0x18]
mov edx, dword [esp + 0x38]
mov edi, dword [edx + ebx*4]
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x100ba814
fld st(1)
mov ecx, eax
fld qword [0x1015f240]
shr ecx, 2
fdiv st(1), st(0)
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
fxch st(1)
call fcn.100db3f0
mov esi, eax
mov dword [esp + 0x18], esi
fild dword [esp + 0x18]
fmul st(1)
fsubp st(3)
fxch st(2)
fdiv qword [esp + 0xb8]
call fcn.100db3f0
fdivrp st(1)
mov ecx, dword [esp + 0x6c]
mov dword [esp + 0x40], eax
mov eax, dword [esp + 0x1c]
add eax, ecx
mov dl, byte [eax + esi]
mov byte [esp + 0x2c], dl
call fcn.100db3f0
mov ecx, dword [esp + 0x68]
mov edx, dword [esp + 0x50]
add ecx, edx
mov dword [esp + 0x18], eax
mov al, byte [ecx + eax]
mov byte [esp + 0x2d], al
lea eax, [esp + 0x2c]
mov ecx, eax
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x100ba890
sub eax, ecx
mov esi, ecx
mov ecx, dword [esp + 0x38]
mov edi, dword [ecx + ebx*4]
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x100ba8a7
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
cmp dword [ebp + 0x14], 0
rep movsb byte es:[edi], byte [esi]
jle 0x100ba98f
mov edx, dword [esp + 0x40]
push edx
lea eax, [esp + 0x198]
push eax
lea ecx, [esp + 0x1bc]
push ecx
call dword [sym.imp.MSVCR80.dll_sprintf]
lea eax, [esp + 0x1c0]
add esp, 0xc
mov ecx, eax
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x100ba8f0
mov edx, dword [esp + 0x38]
mov edi, dword [edx + ebx*4]
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x100ba907
fild dword [esp + 0x18]
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
fmul qword [0x1015f240]
fsubr qword [esp + 0x30]
fdiv qword [esp + 0xb8]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
call fcn.100db3f0
push eax
lea eax, [esp + 0x198]
push eax
lea ecx, [esp + 0x1bc]
push ecx
call dword [sym.imp.MSVCR80.dll_sprintf]
lea eax, [esp + 0x1c0]
add esp, 0xc
mov ecx, eax
lea esp, [esp]
mov dl, byte [eax]
add eax, 1
test dl, dl
jne 0x100ba960
mov edx, dword [esp + 0x38]
mov edi, dword [edx + ebx*4]
sub eax, ecx
mov esi, ecx
add edi, 0xffffffff
mov cl, byte [edi + 1]
add edi, 1
test cl, cl
jne 0x100ba977
mov ecx, eax
shr ecx, 2
rep movsd dword es:[edi], dword [esi]
mov ecx, eax
and ecx, 3
rep movsb byte es:[edi], byte [esi]
add dword [esp + 0x20], 1
add ebx, 1
cmp ebx, dword [ebp + 0xc]
mov dword [esp + 0x18], ebx
jl 0x100ba090
mov eax, dword [esp + 0x64]
push eax
call fcn.100c3250
mov ecx, dword [esp + 0xa0]
add esp, 4
push ecx
call sym.pe.dll_pe_unit_del
mov ecx, dword [esp + 0x23c]
mov eax, dword [esp + 0x20]
pop edi
pop esi
pop ebx
xor ecx, esp
call fcn.100db39a
mov esp, ebp
pop ebp
ret 0x1c