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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff0
sub esp, 0x1d0
mov dword [esp + 0x14], edx
mov ebx, ecx
mov eax, dword [0x10072168]
xor eax, ebp
mov dword [esp + 0x1c8], eax
sub esp, 8
movaps xmmword [esp + 0x48], xmm0
movsd qword [esp], xmm0
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__dsign]
add esp, 8
test eax, eax
je 0x1003b6f7
movdqa xmm1, xmmword [0x10049550]
movdqa xmm0, xmmword [esp + 0x40]
pxor xmm1, xmm0
mov cl, 0x2d
jmp 0x1003b72f
mov al, byte [ebx + 1]
mov cl, 0x2b
movdqa xmm0, xmmword [esp + 0x40]
movdqa xmm1, xmm0
test al, 2
jne 0x1003b72f
mov cl, 0x20
movdqa xmm1, xmm0
test al, 4
jne 0x1003b72f
lea esi, [esp + 0xa0]
mov dword [esi], 0xffffffff
mov dword [esp + 0xc], 0
movdqa xmm1, xmm0
jmp 0x1003b744
lea esi, [esp + 0xa1]
mov dword [esi - 1], 0xffffffff
mov dword [esp + 0xc], ecx
mov byte [esi - 1], cl
movdqa xmmword [esp + 0x20], xmm1
lea edi, [esp + 0x108]
movq qword [edi], xmm1
push edi
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__dtest]
add esp, 4
cmp ax, 2
jne 0x1003b779
mov cl, byte [ebx]
mov eax, ecx
and al, 0xf9
cmp al, 9
mov edx, 0x100503a7
mov eax, 0x100503ab
jmp 0x1003b7aa
movdqa xmm0, xmmword [esp + 0x20]
movq qword [esp + 0x108], xmm0
push edi
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll__dtest]
add esp, 4
cmp ax, 1
jne 0x1003b7f6
mov cl, byte [ebx]
mov eax, ecx
and al, 0xf9
cmp al, 9
mov edx, 0x100503af
mov eax, 0x1004ed12
cmove eax, edx
cmp cl, 7
cmove eax, edx
mov cl, byte [eax + 2]
mov byte [esi + 2], cl
movzx eax, word [eax]
mov word [esi], ax
lea eax, [esp + 0xa0]
sub esi, eax
add esi, 3
js 0x1003c33b
movzx edx, byte [ebx + 1]
and edx, 1
mov ecx, dword [esp + 0x14]
push edx
push 0xffffffffffffffff
push dword [ebx + 4]
push esi
push eax
call sym.absl.dll__PutPaddedString_FormatSinkImpl_str_format_internal_absl__QAE_NVstring_view_3_HH_N_Z
mov esi, ebx
mov bl, 1
test al, al
je 0x1003b7f8
jmp 0x1003c2f0
mov esi, ebx
mov eax, dword [esi + 8]
test eax, eax
mov edx, 6
cmovns edx, eax
mov dword [esp + 0x10], edx
mov dword [esp + 0x9c], 0
mov dword [esp + 0x108], 0xffffffff
sub esp, 0xc
mov dword [esp + 8], edi
movaps xmm0, xmmword [esp + 0x2c]
movsd qword [esp], xmm0
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_frexp]
fstp qword [esp]
mov dword [esp + 8], 0x35
call dword [sym.imp.api_ms_win_crt_math_l1_1_0.dll_ldexp]
add esp, 0xc
fstp qword [esp + 0x60]
movsd xmm0, qword [esp + 0x60]
mov eax, dword [esp + 0x108]
mov dword [esp + 0x1c], eax
lea edi, [eax - 0x35]
movsd xmm1, qword [0x1004be80]
ucomisd xmm0, xmm1
mov ebx, esi
jae 0x1003b876
xorpd xmm1, xmm1
subsd xmm0, xmm1
movsd qword [esp + 0x58], xmm0
fld qword [esp + 0x58]
fisttp qword [esp + 0x58]
setae al
movzx eax, al
shl eax, 0x1f
xor eax, dword [esp + 0x5c]
mov dword [esp + 0x20], eax
mov esi, dword [esp + 0x58]
pcmpeqd xmm0, xmm0
movdqa xmmword [esp + 0xf0], xmm0
movdqa xmmword [esp + 0xe0], xmm0
movdqa xmmword [esp + 0xd0], xmm0
movdqa xmmword [esp + 0xc0], xmm0
movdqa xmmword [esp + 0xb0], xmm0
movdqa xmmword [esp + 0xa0], xmm0
mov cl, byte [ebx]
mov eax, ecx
and al, 0xfe
xor edx, edx
add al, 0xf8
cmp al, 6
ja case.0x1003b8ec.247
movzx eax, al
jmp dword [eax*4 + 0x10050408]
mov eax, dword [esp + 0xc]
mov byte [esp + 0x1b4], al
mov eax, dword [esp + 0x10]
mov dword [esp + 0x1b8], eax
mov dword [esp + 0x1bc], ebx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x1c0], eax
cmp dword [esp + 0x1c], 0x35
mov dword [esp + 0x18], esi
jl 0x1003bc74
mov eax, esi
mov ebx, dword [esp + 0x20]
or eax, ebx
mov dword [esp + 0x38], edi
je 0x1003bde2
bsr eax, ebx
xor eax, 0x1f
bsr ecx, esi
xor ecx, 0x1f
add ecx, 0x20
test ebx, ebx
cmovne ecx, eax
mov esi, 0x40
sub esi, ecx
lea eax, [esi + edi]
cmp eax, 0x81
jl 0x1003bdf0
jmp 0x1003c35e
mov dword [esp + 0x88], esi
mov eax, dword [esp + 0x20]
mov dword [esp + 0x8c], eax
mov dword [esp + 0x90], edi
mov dword [esp + 0x94], 0xffffffff
sub esp, 0x14
movdqu xmm0, xmmword [esp + 0x9c]
movdqu xmmword [esp], xmm0
lea eax, [esp + 0xb0]
mov dword [esp + 0x10], eax
lea esi, [esp + 0xb4]
mov ecx, dword [esp + 0x24]
mov edx, esi
call fcn.1003dbc0
add esp, 0x14
test al, al
je 0x1003bc5c
test byte [ebx + 1], 8
jne 0x1003b9e2
mov eax, dword [esp + 0xfc]
cmp byte [eax - 1], 0x2e
jne 0x1003b9e2
dec eax
mov dword [esp + 0xfc], eax
mov edi, ebx
mov dl, byte [ebx]
mov ecx, edx
and cl, 0xf9
xor eax, eax
cmp cl, 9
setne al
mov ecx, dword [esp + 0x9c]
shl eax, 5
or eax, 0x45
cmp dl, 7
mov edx, 0x45
cmovne edx, eax
push esi
call fcn.1003c7c9
add esp, 4
mov ecx, dword [esp + 0xc]
jmp 0x1003c028
mov eax, esi
xor esi, esi
inc esi
mov ecx, dword [esp + 0x10]
test ecx, ecx
cmovne esi, ecx
lea ecx, [esi - 1]
mov dword [esp + 0x78], eax
mov eax, dword [esp + 0x20]
mov dword [esp + 0x7c], eax
mov dword [esp + 0x80], edi
mov dword [esp + 0x84], 0xffffffff
sub esp, 0x14
movdqu xmm0, xmmword [esp + 0x8c]
movdqu xmmword [esp], xmm0
lea eax, [esp + 0xb0]
mov dword [esp + 0x10], eax
lea edx, [esp + 0xb4]
call fcn.1003dbc0
add esp, 0x14
test al, al
je 0x1003bc5c
mov edi, ebx
mov ebx, dword [esp + 0x9c]
cmp esi, ebx
jle 0x1003bf22
cmp ebx, 0xfffffffc
mov ecx, dword [esp + 0xc]
jl 0x1003bfc0
test ebx, ebx
js 0x1003bf68
je 0x1003bfb3
mov ecx, dword [esp + 0xf8]
lea eax, [ecx + 2]
lea esi, [ecx + 1]
add ebx, ecx
mov cl, byte [ecx + 1]
sub ebx, eax
add ebx, 2
je 0x1003bad7
push ebx
push eax
push esi
mov byte [esp + 0x2c], cl
call sub.VCRUNTIME140.dll_memmove
mov cl, byte [esp + 0x2c]
add esp, 0xc
mov byte [esi + ebx], cl
jmp 0x1003bfaf
mov byte [esp + 0x40], cl
mov eax, dword [esp + 0xc]
mov byte [esp + 0x68], al
mov eax, dword [esp + 0x10]
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], ebx
mov eax, dword [esp + 0x14]
mov dword [esp + 0x74], eax
mov ecx, dword [esp + 0x1c]
add ecx, 0xb
cmp esi, 1
mov eax, dword [esp + 0x20]
sbb eax, 0
mov eax, dword [ebx + 8]
mov dword [esp + 0x14], eax
jl 0x1003bb4f
mov edi, 0xfffffc02
cmp ecx, edi
cmovl edi, ecx
cmp ecx, 0xfffffc02
jle 0x1003c308
mov edx, dword [esp + 0x20]
shld edx, esi, 1
add esi, esi
dec ecx
mov eax, ecx
mov ecx, esi
neg ecx
mov ecx, 0
mov dword [esp + 0x20], edx
sbb ecx, edx
mov ecx, eax
jl 0x1003bb23
mov edi, ecx
mov ecx, dword [esp + 0x20]
mov eax, ecx
shr eax, 0x1f
mov dword [esp + 0xc], eax
dec edi
xor edx, edx
mov eax, esi
or eax, ecx
cmovne edx, edi
mov dword [esp + 0x1c], edx
shld ecx, esi, 1
mov dword [esp + 0x20], ecx
add esi, esi
cmp dword [esp + 0x14], 0
js 0x1003c105
xor ecx, ecx
dec ecx
cmp dword [esp + 0x10], 0xf
jg 0x1003bdb2
mov dword [esp + 0x3c], ebx
mov eax, 0x10
mov ecx, dword [esp + 0x10]
sub eax, ecx
mov dword [esp + 0x54], eax
mov eax, 0xf
sub eax, ecx
shl eax, 2
mov dword [esp + 0x38], eax
mov ecx, 0x3c
sub ecx, eax
xor eax, eax
test ecx, ecx
cmovle ecx, eax
xor ebx, ebx
dec ebx
mov edx, esi
mov esi, ebx
shr esi, cl
test cl, 0x20
mov eax, esi
mov ecx, 0
cmovne eax, ecx
mov edi, 0
cmove esi, ebx
mov dword [esp + 0x18], edx
and esi, edx
and eax, dword [esp + 0x20]
mov ebx, 8
xor edx, edx
mov ecx, dword [esp + 0x38]
shld edx, ebx, cl
mov ecx, dword [esp + 0x38]
shl ebx, cl
test byte [esp + 0x38], 0x20
cmovne edx, ebx
cmovne ebx, edi
mov edi, eax
xor eax, edx
mov ecx, esi
xor ecx, ebx
or ecx, eax
jne 0x1003bebb
cmp dword [esp + 0x10], 0
je 0x1003c0bf
mov edi, dword [esp + 0x54]
lea ecx, [edi*4]
mov esi, 0xf
xor eax, eax
shld eax, esi, cl
shl esi, cl
xor edx, edx
test cl, 0x20
cmovne eax, esi
cmovne esi, edx
and eax, dword [esp + 0x20]
and esi, dword [esp + 0x18]
shrd esi, eax, cl
shr eax, cl
test cl, 0x20
cmove eax, esi
and al, 0xf
jmp 0x1003c0c8
movdqa xmm0, xmmword [esp + 0x40]
mov ecx, ebx
mov edx, dword [esp + 0x14]
call fcn.1003de3e
mov edx, eax
jmp case.0x1003b8ec.247
mov ebx, edi
cmp edi, 0xffffff7f
mov edi, dword [esp + 0x20]
jbe 0x1003c33d
push 0xab
push 0xff
lea eax, [esp + 0x110]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
mov ecx, 0x35
sub ecx, dword [esp + 0x1c]
shrd esi, edi, cl
mov edx, edi
shr edx, cl
xor eax, eax
mov dword [esp + 0x40], ecx
test cl, 0x20
cmovne esi, edx
cmovne edx, eax
cmp ebx, 0xffffffc1
lea ebx, [esp + 0x131]
cmovb esi, eax
mov byte [ebx + 1], 0x2e
cmovb edx, eax
mov dword [esp + 0x14], edx
push 0
push 0xa
push edx
push esi
call fcn.10045b60
mov ecx, eax
add ecx, eax
lea ecx, [ecx + ecx*4]
mov edi, ebx
mov ebx, esi
sub ebx, ecx
or bl, 0x30
mov byte [edi], bl
mov ebx, edi
dec ebx
mov ecx, 9
cmp ecx, esi
mov ecx, 0
sbb ecx, dword [esp + 0x14]
mov esi, eax
jb 0x1003bcd3
lea eax, [esp + 0x133]
mov byte [ebx], 0x30
lea esi, [ebx + 1]
mov ecx, dword [esp + 0x1c]
cmp ecx, 0xfffffff5
mov dword [esp + 0x14], eax
jl 0x1003bdb9
mov dword [esp + 0x40], esi
mov dword [esp + 0xc], ebx
add cl, 0xb
mov ebx, dword [esp + 0x20]
mov esi, dword [esp + 0x18]
shld ebx, esi, cl
shl esi, cl
xor edi, edi
test cl, 0x20
cmovne ebx, esi
cmovne esi, edi
mov edx, dword [esp + 0x10]
test edx, edx
jle 0x1003bd9d
mov ecx, 0xa
mov eax, esi
or eax, ebx
je 0x1003c054
mov eax, esi
mul ecx
mov dword [esp + 0x20], edx
mov esi, eax
mov eax, ebx
mul ecx
add ebx, ebx
lea ebx, [ebx + ebx*4]
xor eax, eax
add ebx, dword [esp + 0x20]
setb al
add eax, edx
add al, 0x30
mov byte [esp + edi + 0x133], al
inc edi
cmp dword [esp + 0x10], edi
jne 0x1003bd59
lea eax, [esp + edi]
add eax, 0x133
mov edx, dword [esp + 0x10]
test ebx, ebx
mov edi, dword [esp + 0x40]
js 0x1003c06d
mov ebx, dword [esp + 0xc]
jmp 0x1003c2a8
mov eax, ecx
jmp 0x1003c0ff
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 0x20]
mov edi, dword [esp + 0x10]
push edi
push dword [esp + 0x44]
push eax
xor eax, eax
push eax
xor eax, eax
push eax
call fcn.1003d71b
mov edx, edi
mov edi, esi
add esp, 0x14
jmp 0x1003c2a8
cmp edi, 0x80
ja 0x1003c35e
xor esi, esi
push 0xab
push 0xff
lea eax, [esp + 0x110]
push eax
call sub.VCRUNTIME140.dll_memset
add esp, 0xc
lea eax, [esp + 0x132]
mov byte [eax], 0x2e
lea eax, [esp + 0x133]
mov ecx, dword [esp + 0x38]
add esi, ecx
cmp esi, 0x40
mov dword [esp + 0x14], eax
ja 0x1003be8a
mov eax, dword [esp + 0x18]
shld ebx, eax, cl
shl eax, cl
xor esi, esi
test cl, 0x20
cmovne ebx, eax
cmove esi, eax
lea edi, [esp + 0x132]
push 0
push 0xa
push ebx
push esi
call fcn.10045b60
mov dword [esp + 0x20], edx
mov ecx, eax
mov edx, eax
add ecx, eax
lea ecx, [ecx + ecx*4]
mov eax, ebx
mov ebx, esi
sub ebx, ecx
or bl, 0x30
mov byte [edi - 1], bl
dec edi
cmp esi, 0xa
sbb eax, 0
mov esi, edx
mov ebx, dword [esp + 0x20]
jae 0x1003be45
lea eax, [esp + 0x133]
mov edx, dword [esp + 0x10]
mov ebx, edi
jmp 0x1003c2ae
cmp ecx, 0x40
mov esi, dword [esp + 0x18]
jb 0x1003bf2b
mov ecx, dword [esp + 0x1c]
add cl, 0x8b
shld ebx, esi, cl
shl esi, cl
xor edx, edx
test cl, 0x20
mov eax, esi
mov esi, ebx
cmovne esi, eax
cmovne eax, edx
xor ecx, ecx
xor ebx, ebx
jmp 0x1003c259
cmp ebx, esi
sbb edx, edi
mov ebx, dword [esp + 0x3c]
mov edi, dword [esp + 0x54]
jae 0x1003c0d4
lea ecx, [edi*4]
xor edx, edx
inc edx
xor eax, eax
shld eax, edx, cl
shl edx, cl
xor esi, esi
test cl, 0x20
cmovne eax, edx
cmovne edx, esi
cmp edi, 0x10
cmovae eax, esi
cmovae edx, esi
setae cl
mov esi, dword [esp + 0x18]
add esi, edx
mov edx, dword [esp + 0x20]
adc eax, edx
test edx, edx
sets dl
test eax, eax
setns ch
and ch, dl
or ch, cl
mov edx, dword [esp + 0xc]
add dl, ch
mov dword [esp + 0xc], edx
mov dword [esp + 0x20], eax
jmp 0x1003c0d8
mov ecx, dword [esp + 0xc]
jmp 0x1003bfc0
test ecx, ecx
je 0x1003c253
mov edx, ebx
shld edx, esi, cl
mov eax, esi
mov esi, ebx
mov ebx, eax
shl ebx, cl
xor edi, edi
test cl, 0x20
cmovne edx, ebx
cmovne ebx, edi
mov cl, 0x75
sub cl, byte [esp + 0x1c]
shrd eax, esi, cl
shr esi, cl
test cl, 0x20
cmovne eax, esi
cmovne esi, edi
mov ecx, ebx
mov ebx, edx
jmp 0x1003c259
mov eax, dword [esp + 0xf8]
mov cl, byte [eax]
mov byte [eax + 1], cl
cmp ebx, 0xffffffff
je 0x1003bf91
inc ebx
mov eax, dword [esp + 0xf8]
lea ecx, [eax - 1]
mov dword [esp + 0xf8], ecx
mov byte [eax], 0x30
inc ebx
jne 0x1003bf7a
mov eax, dword [esp + 0xf8]
lea ecx, [eax - 1]
mov dword [esp + 0xf8], ecx
mov byte [eax], 0x2e
mov eax, dword [esp + 0xf8]
mov byte [eax], 0x30
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x9c], 0
xor ebx, ebx
test byte [edi + 1], 8
jne 0x1003bfee
mov eax, dword [esp + 0xfc]
dec eax
mov cl, byte [eax]
cmp cl, 0x30
jne 0x1003bfde
mov dword [esp + 0xfc], eax
jmp 0x1003bfcd
cmp cl, 0x2e
mov ecx, dword [esp + 0xc]
jne 0x1003bfee
mov dword [esp + 0xfc], eax
test ebx, ebx
je 0x1003c028
mov cl, byte [edi]
mov edx, ecx
and dl, 0xf9
xor eax, eax
cmp dl, 9
setne al
shl eax, 5
or eax, 0x45
cmp cl, 7
mov edx, 0x45
cmovne edx, eax
mov ecx, ebx
lea eax, [esp + 0xa0]
push eax
call fcn.1003c7c9
mov ecx, dword [esp + 0x10]
add esp, 4
mov edx, dword [esp + 0xf8]
mov eax, dword [esp + 0xfc]
sub eax, edx
js 0x1003c33b
movzx ecx, cl
push dword [esp + 0x14]
push edi
push eax
call fcn.1003c88c
add esp, 0xc
jmp 0x1003c2ec
lea eax, [esp + edi]
add eax, 0x133
mov edx, dword [esp + 0x10]
mov ebx, dword [esp + 0xc]
mov edi, dword [esp + 0x40]
jmp 0x1003c2a8
xor ebx, 0x80000000
or esi, ebx
jne 0x1003c27c
mov esi, edx
lea ecx, [eax - 1]
xor edx, edx
cmp byte [eax - 1], 0x2e
sete dl
sub ecx, edx
mov dl, byte [ecx]
mov dh, dl
shr dh, 7
add dh, dl
and dh, 0xfe
mov ebx, edx
sub bl, dh
cmp bl, 1
jne 0x1003c2a2
mov ebx, dword [esp + 0xc]
cmp dl, 0x2e
je 0x1003c0b9
cmp dl, 0x39
jne 0x1003c295
mov byte [ecx], 0x30
mov dl, byte [ecx - 1]
dec ecx
jmp 0x1003c0a8
mov edi, 0x10
mov eax, dword [esp + 0xc]
mov ebx, dword [esp + 0x3c]
test al, 1
jne 0x1003becd
mov esi, dword [esp + 0x18]
shl edi, 2
mov ecx, 0x40
sub ecx, edi
xor edx, edx
test ecx, ecx
cmovle ecx, edx
xor edi, edi
dec edi
mov eax, edi
shr eax, cl
test cl, 0x20
mov ecx, edi
cmovne ecx, eax
cmovne eax, edx
not eax
not ecx
and dword [esp + 0x20], eax
and esi, ecx
xor ecx, ecx
cmp byte [esp + 0x40], 0xf
setne cl
xor eax, eax
dec eax
mov dword [esp + 0x1bf], eax
mov dword [esp + 0x1bb], eax
mov dword [esp + 0x1b7], eax
mov eax, ecx
shl cl, 5
or cl, 0x58
mov word [esp + 0x1c3], 0xffff
mov byte [esp + 0x1b4], 0x30
mov byte [esp + 0x1b5], cl
shl eax, 4
movzx ecx, byte [esp + 0xc]
mov cl, byte [eax + ecx + str.0123456789ABCDEF0123456789abcdef]
mov byte [esp + 0x1b6], cl
cmp dword [esp + 0x14], 0
js 0x1003c16c
cmp dword [esp + 0x10], 0
jg 0x1003c18c
cmp dword [esp + 0x14], 0
jns 0x1003c17b
mov ecx, esi
or ecx, dword [esp + 0x20]
jne 0x1003c18c
test byte [ebx + 1], 8
jne 0x1003c18c
mov edi, esi
lea esi, [esp + 0x1b7]
jmp 0x1003c199
mov edi, esi
lea esi, [esp + 0x1b8]
mov byte [esi - 1], 0x2e
mov ecx, edi
mov ebx, dword [esp + 0x20]
or ecx, ebx
je 0x1003c1c6
xor ecx, ecx
mov edx, ebx
shr edx, 0x1c
mov dl, byte [eax + edx + str.0123456789ABCDEF0123456789abcdef]
shld ebx, edi, 4
mov byte [esi + ecx], dl
shl edi, 4
inc ecx
mov edx, edi
or edx, ebx
jne 0x1003c1a5
add esi, ecx
jmp 0x1003c1c8
xor ecx, ecx
lea eax, [esp + 0x1b4]
sub esi, eax
mov eax, dword [esp + 0x10]
js 0x1003c33b
cmp byte [esp + 0x40], 0xf
setne dl
sub eax, ecx
xor edi, edi
cmp dword [esp + 0x14], 0
cmovns edi, eax
lea eax, [esp + 0x10a]
pcmpeqd xmm0, xmm0
movdqu xmmword [eax + 0x10], xmm0
movdqu xmmword [eax], xmm0
shl dl, 5
or dl, 0x50
mov byte [eax - 2], dl
mov edx, dword [esp + 0x1c]
mov ecx, edx
shr ecx, 0x1f
add cl, cl
add cl, 0x2b
mov byte [eax - 1], cl
mov ecx, edx
neg ecx
cmovs ecx, edx
push eax
push ecx
call sym.absl.dll__FastIntToBuffer_numbers_internal_absl__YAPADHPAD_Z
add esp, 8
lea ebx, [esp + 0x108]
push ebx
call sub.api_ms_win_crt_string_l1_1_0.dll_strlen
add esp, 4
lea ecx, [esp + 0x68]
lea edx, [esp + 0x1b4]
push eax
push ebx
push edi
push 2
jmp 0x1003c2e3
xor eax, eax
mov ecx, esi
xor esi, esi
mov edx, ebx
lea edi, [esp + 0x132]
push edi
push esi
push eax
call fcn.1003d5f5
add esp, 0xc
mov ebx, eax
lea eax, [esp + 0x133]
mov edx, dword [esp + 0x10]
jmp 0x1003c2ae
lea ecx, [eax - 1]
mov ebx, dword [esp + 0xc]
mov dl, byte [ecx]
cmp dl, 0x2e
je 0x1003c292
cmp dl, 0x39
jne 0x1003c295
mov byte [ecx], 0x30
dec ecx
jmp 0x1003c283
inc dl
mov byte [ecx], dl
mov edx, dword [esp + 0x1b8]
jmp 0x1003c2a8
mov ebx, dword [esp + 0xc]
mov edx, esi
cmp byte [ebx], 0x30
cmove ebx, edi
mov esi, eax
sub esi, ebx
test edx, edx
jne 0x1003c2c4
mov ecx, dword [esp + 0x1bc]
test byte [ecx + 1], 8
jne 0x1003c2c4
dec esi
test esi, esi
js 0x1003c33b
mov edi, dword [esp + 0x14]
sub edi, eax
add edi, edx
xor eax, eax
lea ecx, [esp + 0x1b4]
mov edx, ebx
push eax
push 0x1004d007
push edi
push eax
push esi
call fcn.1003d945
add esp, 0x14
mov dl, 1
mov ebx, edx
mov ecx, dword [esp + 0x1c8]
xor ecx, ebp
call fcn.10045530
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov cl, 2
mov eax, edi
sub cl, al
mov eax, dword [esp + 0x20]
shrd esi, eax, cl
shr eax, cl
xor edx, edx
test cl, 0x20
cmovne esi, eax
mov dword [esp + 0xc], 0
cmovne eax, edx
mov dword [esp + 0x20], eax
mov dword [esp + 0x1c], 0xfffffc02
jmp 0x1003bb76
ud2
mov eax, 0x35
sub eax, dword [esp + 0x1c]
mov ecx, esi
lea esi, [esp + 0x1b4]
mov edx, edi
xor ebx, ebx
push esi
push eax
push ebx
push ebx
call fcn.1003c9c1
jmp 0x1003c376
lea eax, [esp + 0x1b4]
xor esi, esi
mov ecx, dword [esp + 0x18]
mov edx, ebx
push eax
push edi
push esi
push esi
call fcn.1003c924
add esp, 0x10
jmp 0x1003c2ec