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

Disassembly:
sub esp, 0x34
movsd xmm0, qword [esp + 0x40]
push ebx
mov ebx, dword [esp + 0x4c]
push ebp
movsd qword [esp + 0x48], xmm0
mov ebp, dword [esp + 0x48]
mov eax, ebp
mov ecx, dword [esp + 0x4c]
or eax, ecx
push esi
mov esi, dword [esp + 0x44]
push edi
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x34], ebx
mov dword [esp + 0x40], esi
mov dword [esp + 0x20], ebp
jne 0x1000d2ab
xor ecx, ecx
mov eax, edi
test ebx, ebx
setne cl
sub eax, esi
add ecx, 5
add ecx, ebx
cmp eax, ecx
jge 0x1000d283
mov edx, 0x84
mov eax, edi
jmp 0x1000d846
mov byte [esi], 0x30
inc esi
test ebx, ebx
je 0x1000d29d
push ebx
mov byte [esi], 0x2e
inc esi
push 0x30
push esi
call fcn.10013730
add esp, 0xc
add esi, ebx
mov dword [esi], 0x30302b65
lea eax, [esi + 4]
jmp 0x1000d844
mov edx, ecx
shr ecx, 0x14
and edx, 0xfffff
mov dword [esp + 0x1c], edx
test ecx, ecx
jne 0x1000d2db
mov eax, 0xfffffbce
mov dword [esp + 0x50], ecx
mov dword [esp + 0x18], eax
inc ebx
mov dword [esp + 0x14], ecx
mov ebp, ecx
mov dword [esp + 0x10], ecx
jmp 0x1000d51b
lea eax, [ecx - 0x433]
mov dword [esp + 0x2c], ebp
mov dword [esp + 0x24], eax
or edx, 0x100000
mov esi, dword [esp + 0x24]
xor ecx, ecx
mov dword [esp + 0x18], esi
inc ebx
cmp dword [esp + 0x24], 0xffffffcc
mov eax, ecx
mov esi, dword [esp + 0x2c]
mov ebp, ecx
mov dword [esp + 0x30], edx
mov edx, ecx
mov dword [esp + 0x20], esi
mov esi, dword [esp + 0x30]
mov dword [esp + 0x1c], esi
mov esi, dword [esp + 0x48]
mov dword [esp + 0x50], eax
mov dword [esp + 0x14], edx
mov dword [esp + 0x10], ecx
jl 0x1000d4d6
mov eax, dword [esp + 0x24]
test eax, eax
jns 0x1000d345
push 0x78
inc edx
mov dword [esp + 0x3c], ecx
pop ecx
mov dword [esp + 0x28], edx
jmp 0x1000d39d
lea edx, [eax + 0xf]
shr edx, 4
mov eax, edx
mov dword [esp + 0x38], edx
shl eax, 4
add eax, 0x78
mov dword [esp + 0x3c], eax
imul eax, edx, 0x134410
xor edx, edx
push 9
pop edi
shr eax, 0x12
add eax, 0x19
div edi
mov edi, dword [esp + 0x2c]
mov edx, eax
mov dword [esp + 0x20], edi
mov edi, dword [esp + 0x30]
sub edx, 1
mov eax, dword [esp + 0x24]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 0x4c]
mov dword [esp + 0x28], edx
mov dword [esp + 0x18], eax
js 0x1000d4d0
mov ecx, dword [esp + 0x3c]
mov ebp, dword [esp + 0x30]
sub ecx, eax
add ecx, 8
mov dword [esp + 0x30], ebp
mov dword [esp + 0x3c], ecx
mov ecx, dword [esp + 0x2c]
mov esi, ecx
shld dword [esp + 0x30], esi, 8
mov dword [esp + 0x1c], ebp
shl esi, 8
mov dword [esp + 0x2c], esi
imul esi, edx, 9
mov dword [esp + 0x18], eax
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], esi
mov esi, dword [esp + 0x48]
mov ebp, dword [esp + 0x24]
mov eax, dword [esp + 0x38]
push dword [esp + 0x3c]
movzx eax, word [eax*2 + 0x10030c60]
add eax, edx
imul eax, eax, 0x18
add eax, 0x10030ce0
push eax
push dword [esp + 0x38]
push dword [esp + 0x38]
call fcn.1000dee0
mov edx, dword [esp + 0x24]
add esp, 0x10
mov dword [esp + 0x50], eax
test edx, edx
je 0x1000d43d
lea ebp, [edx + 9]
push 9
cmp ebp, ebx
ja 0x1000d4bb
mov ecx, edi
sub ecx, esi
pop edx
cmp ecx, edx
jl 0x1000d277
push esi
push eax
call fcn.10007cb2
pop ecx
pop ecx
push 9
pop eax
add esi, eax
jmp 0x1000d492
test eax, eax
je 0x1000d4a0
push eax
call fcn.1000d96a
mov ebp, eax
mov eax, dword [esp + 0x28]
dec eax
add eax, ebp
mov dword [esp + 0x14], eax
pop ecx
cmp ebp, ebx
ja 0x1000d4c8
cmp dword [esp + 0x34], 0
jbe 0x1000d481
mov ecx, edi
lea eax, [ebp + 1]
sub ecx, esi
cmp ecx, eax
jl 0x1000d277
push esi
push dword [esp + 0x54]
push ebp
call fcn.1000c40b
add esp, 0xc
add esi, ebp
jmp 0x1000d491
cmp esi, edi
je 0x1000d277
mov al, byte [esp + 0x50]
add al, 0x30
mov byte [esi], al
inc esi
mov eax, dword [esp + 0x50]
mov edx, ebp
mov ebp, dword [esp + 0x24]
mov dword [esp + 0x14], edx
mov ecx, dword [esp + 0x28]
sub ebp, 9
dec ecx
mov dword [esp + 0x24], ebp
mov dword [esp + 0x28], ecx
test ecx, ecx
js 0x1000d4c2
mov edx, ecx
jmp 0x1000d3dc
pop ecx
mov ebp, ecx
xor ecx, ecx
jmp 0x1000d4d6
xor ecx, ecx
mov ebp, ecx
jmp 0x1000d4d6
mov edx, dword [esp + 0x14]
xor ecx, ecx
jmp 0x1000d4d2
mov edx, ecx
mov eax, dword [esp + 0x50]
cmp dword [esp + 0x18], 0
mov dword [esp + 0x48], ebp
jge 0x1000d669
mov dword [esp + 0x50], eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x10], eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x18], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x14], edx
mov edx, ebp
mov dword [esp + 0x20], eax
mov eax, dword [esp + 0x1c]
mov dword [esp + 0x1c], eax
test edx, edx
jne 0x1000d669
mov eax, dword [esp + 0x18]
cdq
and edx, 0xf
add edx, eax
sar edx, 4
neg edx
mov dword [esp + 0x2c], edx
movzx eax, byte [edx + 0x10038030]
mov dword [esp + 0x48], eax
cmp eax, 0xc8
jae 0x1000d669
imul eax, eax, 9
mov dword [esp + 0x30], eax
movzx eax, byte [edx + 0x10038030]
movzx edx, word [edx*2 + 0x10037fa0]
sub edx, eax
mov eax, dword [esp + 0x2c]
add edx, dword [esp + 0x48]
movzx eax, word [eax*2 + 0x10037fa2]
cmp edx, eax
jae 0x1000d59f
mov ecx, dword [esp + 0x20]
push 8
pop eax
sub eax, dword [esp + 0x2c]
shl eax, 4
sub eax, dword [esp + 0x18]
push eax
imul eax, edx, 0x18
add eax, 0x10038078
push eax
mov eax, dword [esp + 0x24]
shld eax, ecx, 8
shl ecx, 8
push eax
push ecx
call fcn.1000dee0
add esp, 0x10
mov ecx, eax
mov eax, dword [esp + 0x14]
mov dword [esp + 0x50], ecx
test eax, eax
je 0x1000d602
add eax, 9
mov dword [esp + 0x3c], eax
push 9
cmp eax, ebx
ja 0x1000d666
mov eax, edi
sub eax, esi
pop edx
cmp eax, edx
jl 0x1000d277
push esi
push ecx
call fcn.10007cb2
pop ecx
pop ecx
push 9
pop eax
add esi, eax
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x14], eax
xor ecx, ecx
mov eax, dword [esp + 0x30]
inc dword [esp + 0x48]
push 9
pop edx
add eax, edx
mov dword [esp + 0x30], eax
cmp eax, 0x708
jge 0x1000d669
mov edx, dword [esp + 0x2c]
jmp 0x1000d547
test ecx, ecx
je 0x1000d5df
push ecx
call fcn.1000d96a
pop ecx
mov ebp, eax
sub eax, dword [esp + 0x30]
push 0xa
pop ecx
sub eax, ecx
mov dword [esp + 0x10], eax
cmp ebp, ebx
ja 0x1000d669
cmp dword [esp + 0x34], 0
jbe 0x1000d648
mov ecx, edi
lea eax, [ebp + 1]
sub ecx, esi
cmp ecx, eax
jl 0x1000d277
push esi
push dword [esp + 0x54]
push ebp
call fcn.1000c40b
add esp, 0xc
add esi, ebp
jmp 0x1000d658
cmp esi, edi
je 0x1000d277
mov al, byte [esp + 0x50]
add al, 0x30
mov byte [esi], al
xor ecx, ecx
mov dword [esp + 0x14], ebp
mov ebp, ecx
inc esi
jmp 0x1000d5e1
pop eax
mov ebp, eax
mov ecx, ebx
xor edx, edx
sub ecx, dword [esp + 0x14]
test ebp, ebp
push 5
cmovne edx, dword [esp + 0x54]
and dword [esp + 0x54], 0
mov eax, edx
mov dword [esp + 0x4c], eax
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x40], edx
pop eax
cmp ebp, ecx
jbe 0x1000d724
sub ebp, ecx
je 0x1000d728
push 0xa
mov eax, edx
pop ecx
xor edx, edx
div ecx
mov edi, edx
mov dword [esp + 0x50], edi
sub ebp, 1
jne 0x1000d6a3
mov ecx, dword [esp + 0x28]
push 5
mov dword [esp + 0x4c], eax
pop eax
cmp edi, eax
mov edi, dword [esp + 0x4c]
jne 0x1000d724
sub ebx, dword [esp + 0x10]
mov eax, dword [esp + 0x18]
mov ebp, dword [esp + 0x1c]
add eax, ebx
neg eax
test eax, eax
jle 0x1000d6f4
cmp eax, 0x3c
jge 0x1000d6f0
push eax
push ebp
push dword [esp + 0x28]
call fcn.1000e0aa
add esp, 0xc
test al, al
jne 0x1000d6f4
xor al, al
jmp 0x1000d6f6
mov al, 1
test ebx, ebx
jns 0x1000d716
test al, al
je 0x1000d714
push ebp
push dword [esp + 0x24]
call fcn.1000e10f
neg ebx
pop ecx
pop ecx
cmp eax, ebx
jb 0x1000d714
mov al, 1
jmp 0x1000d716
xor al, al
mov ecx, dword [esp + 0x28]
mov edx, dword [esp + 0x48]
movzx ebp, al
inc ebp
jmp 0x1000d730
mov edx, dword [esp + 0x48]
cmp eax, dword [esp + 0x50]
sbb ebp, ebp
neg ebp
cmp dword [esp + 0x14], 0
je 0x1000d763
mov eax, edi
sub eax, esi
cmp eax, ecx
jl 0x1000d277
test edx, edx
jne 0x1000d752
push ecx
push 0x30
push esi
call fcn.10013730
jmp 0x1000d75a
push esi
push edx
push ecx
call fcn.10007ba2
add esp, 0xc
add esi, dword [esp + 0x28]
jmp 0x1000d79b
cmp dword [esp + 0x34], 0
jbe 0x1000d78d
mov ebx, dword [esp + 0x28]
mov ecx, edi
sub ecx, esi
lea eax, [ebx + 1]
cmp ecx, eax
jl 0x1000d277
push esi
push edx
push ebx
call fcn.1000c40b
inc esi
add esp, 0xc
add esi, ebx
jmp 0x1000d79b
cmp esi, edi
je 0x1000d277
add dl, 0x30
mov byte [esi], dl
inc esi
test ebp, ebp
je 0x1000d7dc
mov edx, dword [esp + 0x40]
mov eax, esi
cmp esi, edx
je 0x1000d7c0
dec eax
mov cl, byte [eax]
cmp cl, 0x2e
je 0x1000d7bc
cmp cl, 0x39
jne 0x1000d7ce
xor ebp, ebp
mov byte [eax], 0x30
inc ebp
cmp eax, edx
jne 0x1000d7a9
mov byte [eax], 0x31
mov eax, dword [esp + 0x10]
inc eax
mov dword [esp + 0x10], eax
jmp 0x1000d7e0
cmp ebp, 1
je 0x1000d7d8
test cl, 1
je 0x1000d7dc
inc cl
mov byte [eax], cl
mov eax, dword [esp + 0x10]
cdq
mov ecx, edi
xor eax, edx
sub eax, edx
xor edx, edx
cmp eax, 0x64
setge dl
sub ecx, esi
add edx, 4
cmp ecx, edx
jl 0x1000d277
cmp dword [esp + 0x10], 0
mov byte [esi], 0x65
setl cl
lea ecx, [ecx*2 + 0x2b]
mov byte [esi + 1], cl
cmp eax, 0x64
jl 0x1000d833
push 0xa
cdq
pop ebx
idiv ebx
add dl, 0x30
mov ax, word [eax*2 + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [esi + 2], ax
mov byte [esi + 4], dl
add esi, 5
jmp 0x1000d842
mov ax, word [eax*2 + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [esi + 2], ax
add esi, 4
mov eax, esi
xor edx, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x34
ret