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

Disassembly:
sub esp, 0x48
push ebx
push ebp
mov ebp, dword [esp + 0x54]
movaps xmm0, xmm3
push esi
movsd qword [esp + 0x44], xmm0
mov ebx, edx
mov eax, dword [esp + 0x44]
push edi
mov edi, ecx
mov dword [esp + 0x28], eax
mov ecx, dword [esp + 0x4c]
or eax, ecx
mov dword [esp + 0x50], ebx
mov dword [esp + 0x38], ebp
mov dword [esp + 0x54], edi
jne 0x493b8f
xor ecx, ecx
mov eax, ebx
test ebp, ebp
setne cl
sub eax, edi
add ecx, 5
add ecx, ebp
cmp eax, ecx
jge 0x493b67
mov edx, 0x84
mov eax, ebx
jmp 0x4940fe
mov byte [edi], 0x30
inc edi
test ebp, ebp
je 0x493b81
push ebp
mov byte [edi], 0x2e
inc edi
push 0x30
push edi
call fcn.0062bd30
add esp, 0xc
add edi, ebp
mov dword [edi], 0x30302b65
lea eax, [edi + 4]
jmp 0x4940fc
mov esi, ecx
mov dword [esp + 0x2c], 9
and esi, 0xfffff
shr ecx, 0x14
mov dword [esp + 0x24], esi
test ecx, ecx
jne 0x493bd0
mov dword [esp + 0x20], 0xfffffbce
mov edx, ecx
mov eax, dword [esp + 0x20]
mov esi, ecx
inc ebp
mov dword [esp + 0x1c], edx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], ecx
jmp 0x493dbd
mov eax, dword [esp + 0x28]
lea edx, [ecx - 0x433]
or esi, 0x100000
mov dword [esp + 0x34], eax
xor ecx, ecx
mov dword [esp + 0x30], esi
inc ebp
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x30]
mov esi, ecx
mov dword [esp + 0x3c], edx
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], ecx
mov dword [esp + 0x20], edx
mov dword [esp + 0x24], eax
cmp edx, 0xffffffcc
jl 0x493db1
test edx, edx
jns 0x493c2c
mov dword [esp + 0x40], ecx
inc ecx
push 0x78
pop eax
mov dword [esp + 0x2c], ecx
jmp 0x493c81
add edx, 0xf
shr edx, 4
mov eax, edx
mov dword [esp + 0x40], edx
shl eax, 4
add eax, 0x78
mov dword [esp + 0x44], eax
imul eax, edx, 0x134410
xor edx, edx
shr eax, 0x12
add eax, 0x19
div dword [esp + 0x2c]
mov edx, dword [esp + 0x3c]
sub eax, 1
mov dword [esp + 0x20], edx
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0x34]
mov dword [esp + 0x28], eax
mov eax, dword [esp + 0x30]
mov dword [esp + 0x24], eax
js 0x493db1
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x2c]
mov esi, dword [esp + 0x30]
sub eax, edx
add eax, 8
mov dword [esp + 0x30], esi
mov dword [esp + 0x48], eax
mov eax, dword [esp + 0x34]
mov edx, eax
shld dword [esp + 0x30], edx, 8
lfence
shl edx, 8
mov dword [esp + 0x44], edx
imul edx, ecx, 9
mov dword [esp + 0x28], eax
mov dword [esp + 0x24], esi
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x3c]
mov dword [esp + 0x20], edx
mov eax, dword [esp + 0x40]
push dword [esp + 0x30]
mov edx, dword [esp + 0x4c]
push dword [esp + 0x48]
movzx eax, word [eax*2 + 0x71c120]
add eax, ecx
imul ecx, eax, 0x18
add ecx, 0x6e3ba0
call fcn.00493898
mov edx, eax
mov eax, dword [esp + 0x18]
mov dword [esp + 0x24], edx
pop ecx
pop ecx
test eax, eax
je 0x493d25
lea esi, [eax + 9]
push 9
pop eax
cmp esi, ebp
ja 0x493da9
mov ecx, ebx
sub ecx, edi
cmp ecx, eax
jl 0x493b5b
mov ecx, dword [esp + 0x1c]
mov edx, edi
call fcn.0049916f
push 9
pop eax
add edi, eax
xor ecx, ecx
jmp 0x493d84
xor ecx, ecx
mov esi, ecx
mov dword [esp + 0x14], esi
test edx, edx
je 0x493d8e
mov ecx, edx
call fcn.004936b1
mov esi, eax
mov eax, dword [esp + 0x34]
dec eax
mov dword [esp + 0x14], esi
add eax, esi
mov dword [esp + 0x18], eax
cmp esi, ebp
ja 0x493daf
cmp dword [esp + 0x38], 0
jbe 0x493d73
mov ecx, ebx
lea eax, [esi + 1]
sub ecx, edi
cmp ecx, eax
jl 0x493b5b
push edi
mov ecx, esi
lfence
call fcn.00493a4a
pop ecx
add edi, esi
jmp 0x493d81
cmp edi, ebx
je 0x493b5b
mov al, dl
add al, 0x30
mov byte [edi], al
xor ecx, ecx
inc edi
mov dword [esp + 0x10], esi
mov esi, ecx
mov dword [esp + 0x14], esi
mov eax, dword [esp + 0x2c]
push 9
dec eax
pop edx
sub dword [esp + 0x34], edx
mov dword [esp + 0x2c], eax
test eax, eax
js 0x493db1
mov ecx, eax
jmp 0x493cbf
mov esi, eax
mov dword [esp + 0x14], esi
xor ecx, ecx
mov eax, dword [esp + 0x20]
test eax, eax
jns 0x493f24
lfence
test esi, esi
jne 0x493f24
cdq
and edx, 0xf
add edx, eax
sar edx, 4
neg edx
lfence
mov dword [esp + 0x2c], edx
movzx eax, byte [edx + 0x71e3f0]
mov dword [esp + 0x34], eax
cmp eax, 0xc8
jae 0x493f24
imul eax, eax, 9
mov dword [esp + 0x30], eax
movzx eax, byte [edx + 0x71e3f0]
movzx edx, word [edx*2 + 0x71c1a0]
sub edx, eax
mov eax, dword [esp + 0x2c]
add edx, dword [esp + 0x34]
mov dword [esp + 0x48], edx
movzx eax, word [eax*2 + 0x71c1a2]
cmp edx, eax
jae 0x493e5a
imul ecx, dword [esp + 0x48], 0x18
mov esi, dword [esp + 0x28]
mov eax, dword [esp + 0x24]
push 8
pop edx
sub edx, dword [esp + 0x2c]
add ecx, 0x6eae60
shld eax, esi, 8
shl edx, 4
sub edx, dword [esp + 0x20]
shl esi, 8
push eax
push esi
lfence
call fcn.00493898
mov esi, dword [esp + 0x1c]
pop ecx
pop ecx
mov ecx, eax
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1c], ecx
test eax, eax
je 0x493ebb
add eax, 9
mov dword [esp + 0x48], eax
push 9
cmp eax, ebp
ja 0x493f21
mov eax, ebx
sub eax, edi
pop edx
cmp eax, edx
jl 0x493b5b
mov edx, edi
call fcn.0049916f
push 9
pop eax
add edi, eax
mov eax, dword [esp + 0x48]
mov dword [esp + 0x10], eax
xor ecx, ecx
mov eax, dword [esp + 0x30]
inc dword [esp + 0x34]
push 9
pop edx
add eax, edx
mov dword [esp + 0x30], eax
cmp eax, 0x708
jge 0x493f24
mov edx, dword [esp + 0x2c]
jmp 0x493df7
test ecx, ecx
je 0x493e98
call fcn.004936b1
mov esi, eax
sub eax, dword [esp + 0x30]
push 0xa
pop edx
sub eax, edx
mov dword [esp + 0x18], eax
cmp esi, ebp
ja 0x493f24
cmp dword [esp + 0x38], 0
jbe 0x493f01
mov ecx, ebx
lea eax, [esi + 1]
sub ecx, edi
cmp ecx, eax
jl 0x493b5b
mov edx, dword [esp + 0x1c]
mov ecx, esi
push edi
lfence
call fcn.00493a4a
pop ecx
add edi, esi
jmp 0x493f0f
cmp edi, ebx
je 0x493b5b
mov al, cl
add al, 0x30
mov byte [edi], al
xor ecx, ecx
mov dword [esp + 0x10], esi
mov esi, ecx
inc edi
mov dword [esp + 0x14], esi
jmp 0x493e9a
pop eax
mov esi, eax
mov ecx, ebp
xor edx, edx
sub ecx, dword [esp + 0x10]
test esi, esi
push 5
cmovne edx, dword [esp + 0x20]
and dword [esp + 0x44], 0
mov eax, edx
mov dword [esp + 0x30], eax
mov dword [esp + 0x18], ecx
mov dword [esp + 0x4c], edx
pop eax
cmp esi, ecx
jbe 0x493fde
sub esi, ecx
je 0x493fe2
push 0xa
mov eax, edx
pop ebx
xor edx, edx
div ebx
mov ecx, edx
mov dword [esp + 0x40], ecx
sub esi, 1
jne 0x493f5e
mov ebx, dword [esp + 0x50]
push 5
mov dword [esp + 0x30], eax
pop eax
cmp ecx, eax
mov ecx, dword [esp + 0x14]
jne 0x493fde
sub ebp, dword [esp + 0x18]
mov eax, dword [esp + 0x20]
mov esi, dword [esp + 0x24]
lea ecx, [eax + ebp]
neg ecx
test ecx, ecx
jle 0x493fae
cmp ecx, 0x3c
jge 0x493faa
push esi
push dword [esp + 0x2c]
call fcn.00493866
pop ecx
pop ecx
test al, al
jne 0x493fae
xor al, al
jmp 0x493fb0
mov al, 1
test ebp, ebp
jns 0x493fd0
test al, al
je 0x493fce
push esi
push dword [esp + 0x2c]
call fcn.004937b3
neg ebp
pop ecx
pop ecx
cmp eax, ebp
jb 0x493fce
mov al, 1
jmp 0x493fd0
xor al, al
mov ecx, dword [esp + 0x14]
mov edx, dword [esp + 0x2c]
movzx ebp, al
inc ebp
jmp 0x493fea
mov edx, dword [esp + 0x2c]
cmp eax, dword [esp + 0x40]
sbb ebp, ebp
neg ebp
cmp dword [esp + 0x10], 0
je 0x49401f
mov eax, ebx
sub eax, edi
cmp eax, ecx
jl 0x493b5b
test edx, edx
jne 0x49400f
push ecx
push 0x30
push edi
call fcn.0062bd30
add esp, 0xc
jmp 0x494019
push edi
lfence
call fcn.004991e0
pop ecx
add edi, dword [esp + 0x14]
jmp 0x494058
cmp dword [esp + 0x38], 0
jbe 0x49404a
mov esi, dword [esp + 0x14]
mov ecx, ebx
sub ecx, edi
lea eax, [esi + 1]
cmp ecx, eax
jl 0x493b5b
push edi
mov ecx, esi
lfence
call fcn.00493a4a
inc edi
pop ecx
add edi, esi
jmp 0x494058
cmp edi, ebx
je 0x493b5b
add dl, 0x30
mov byte [edi], dl
inc edi
test ebp, ebp
je 0x494095
mov edx, dword [esp + 0x54]
mov eax, edi
cmp edi, edx
je 0x49407d
dec eax
mov cl, byte [eax]
cmp cl, 0x2e
je 0x494079
cmp cl, 0x39
jne 0x494087
xor ebp, ebp
mov byte [eax], 0x30
inc ebp
cmp eax, edx
jne 0x494066
mov esi, dword [esp + 0x18]
mov byte [eax], 0x31
inc esi
jmp 0x494099
cmp ebp, 1
je 0x494091
test cl, 1
je 0x494095
inc cl
mov byte [eax], cl
mov esi, dword [esp + 0x18]
mov eax, esi
mov ecx, ebx
cdq
xor eax, edx
sub eax, edx
xor edx, edx
cmp eax, 0x64
setge dl
sub ecx, edi
add edx, 4
cmp ecx, edx
jl 0x493b5b
test esi, esi
mov byte [edi], 0x65
sets cl
lea ecx, [ecx*2 + 0x2b]
mov byte [edi + 1], cl
cmp eax, 0x64
jl 0x4940eb
push 0xa
cdq
pop esi
idiv esi
add dl, 0x30
mov ax, word [eax*2 + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [edi + 2], ax
mov byte [edi + 4], dl
add edi, 5
jmp 0x4940fa
mov ax, word [eax*2 + str.00010203040506070809101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899]
mov word [edi + 2], ax
add edi, 4
mov eax, edi
xor edx, edx
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x48
ret