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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x180
mov eax, dword [0x104d53e8]
mov edi, edx
mov ebx, ecx
dec eax
cmp eax, 5
jb 0x100b90e4
mov ecx, dword [0x104d4570]
test ecx, ecx
je 0x100b90e4
mov al, 1
cmp ecx, 1
je 0x100b9086
cmp ecx, 2
jne 0x100b90d6
mov al, 2
movzx edx, al
mov ecx, 0x104d4570
call fcn.10109d10
test al, al
je 0x100b90e4
mov edx, dword [0x104d4574]
mov dword [esp + 0xc8], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0xcc], 0
lea ecx, [esp + 8]
lea eax, [edx + 0x2c]
mov dword [esp + 0xd0], eax
lea eax, [esp + 0xc8]
push eax
call fcn.101097e0
add esp, 4
jmp 0x100b915d
mov ecx, 0x104d4570
call fcn.10109c60
test al, al
jne 0x100b9086
mov eax, dword [0x104d4574]
mov dword [esp + 0xcc], 0
mov dword [esp + 0xc8], 0
lea ecx, [esp + 0xc8]
lea edx, [esp + 0x78]
mov dword [esp + 0x78], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0x7c], 0
mov dword [esp + 0xd8], eax
add eax, 0x2c
mov dword [esp + 0x80], eax
call fcn.10109b60
movsd xmm1, qword [esp + 0xd0]
movsd xmm0, qword [esp + 0xc8]
movsd qword [esp + 0x10], xmm1
movsd xmm1, qword [esp + 0xd8]
movsd qword [esp + 8], xmm0
movsd qword [esp + 0x18], xmm1
mov eax, dword [esp + 8]
or eax, dword [esp + 0xc]
je 0x100b9185
mov eax, dword [esp + 0x14]
mov ecx, dword [eax + 8]
lea edx, [ecx + 7]
neg ecx
and ecx, edx
lea edx, [esp + 8]
add ecx, dword [esp + 0x10]
push edx
push ecx
call dword [eax + 0x28]
add esp, 8
mov esi, dword [ebp + 0xc]
cmp dword [esp + 0x18], 0
je 0x100b91a4
lea ecx, [esp + 8]
mov edx, 0x104257d7
push 5
push 0x15
call fcn.10109af0
add esp, 8
lea eax, [esp + 8]
mov dword [esp + 0x44], eax
mov ecx, dword [esi + 0x138]
movups xmm0, xmmword [esi + 0x118]
movups xmm1, xmmword [esi + 0x128]
mov eax, dword [esi + 0x13c]
mov dword [esi + 0x138], 2
mov dword [esi + 0x13c], 0
cmp cl, 2
jne 0x100b9255
lea ecx, [esp + 0x44]
call fcn.10012f50
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, eax
or edx, ecx
je 0x100b9211
mov edx, dword [esp + 0x14]
mov esi, dword [edx + 8]
lea edi, [esi + 7]
neg esi
and esi, edi
add esi, dword [esp + 0x10]
push ecx
push eax
push esi
call dword [edx + 0x38]
add esp, 0xc
cmp dword [esp + 0x18], 0
je 0x100b922d
lea ecx, [esp + 8]
mov edx, str.tracing::span_tracing::span::active
push 5
push 0xd
call fcn.10109af0
add esp, 8
mov eax, dword [esp + 8]
or eax, dword [esp + 0xc]
je 0x100b9249
mov eax, dword [esp + 0x10]
lock dec dword [eax]
jne 0x100b9249
lea ecx, [esp + 0x10]
call fcn.10116bf0
xor ebx, ebx
mov eax, ebx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
movups xmmword [esp + 0x78], xmm0
movups xmmword [esp + 0x88], xmm1
mov dword [esp + 0x98], ecx
mov dword [esp + 0x9c], eax
mov eax, dword [0x104debf8]
cmp eax, 5
jb 0x100b927f
mov eax, dword [0x104debfc]
mov eax, dword [0x104d53e8]
dec eax
cmp eax, 5
jb 0x100b943d
mov ecx, dword [0x104d457c]
test ecx, ecx
je 0x100b943d
mov al, 1
cmp ecx, 1
je 0x100b92ae
cmp ecx, 2
jne 0x100b9800
mov al, 2
movzx edx, al
mov ecx, 0x104d457c
call fcn.10109d10
test al, al
je 0x100b943d
mov ecx, dword [0x104d4580]
mov dword [esp + 4], edi
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x100b9863
mov edi, dword [ecx + 0x2c]
mov edx, dword [ecx + 0x34]
mov esi, dword [ecx + 0x38]
cmp eax, 1
mov dword [esp + 0xb4], 0
mov dword [esp + 0x48], 0x1041d6e0
mov dword [esp + 0x4c], 1
mov dword [esp + 0x50], 0
mov dword [esp + 0x58], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0x24], ebx
mov dword [esp + 0x5c], 0
mov dword [esp + 0xb8], edi
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], edx
mov dword [esp + 0xc4], esi
je 0x100b9863
lea ebx, [esp + 0x78]
cmp eax, 2
mov dword [esp + 0x64], 1
mov dword [esp + 0x68], edi
mov dword [esp + 0x6c], eax
mov dword [esp + 0x70], edx
mov dword [esp + 0x74], esi
mov dword [esp + 0xa0], ebx
jbe 0x100b9863
mov dword [esp + 0x28], 2
mov dword [esp + 0x2c], edi
mov dword [esp + 0x30], eax
mov dword [esp + 0x34], edx
mov edx, dword [esp + 0x88]
mov ebx, dword [esp + 0x24]
lea eax, [ecx + 0x2c]
mov dword [esp + 0x38], esi
test edx, edx
je 0x100b939a
mov edx, dword [esp + 0x80]
mov dword [esp + 0xa4], edx
lea edx, [esp + 0xb4]
mov dword [esp + 0xc8], edx
lea edx, [esp + 0x48]
mov dword [esp + 0xcc], edx
lea edx, [esp + 0x64]
mov dword [esp + 0xd0], 0x10419960
mov dword [esp + 0xd4], edx
lea edx, [esp + 0xa0]
mov dword [esp + 0xd8], edx
lea edx, [esp + 0x28]
mov dword [esp + 0xdc], 0x1041d6f8
mov dword [esp + 0xe0], edx
lea edx, [esp + 0xa4]
mov dword [esp + 0xe4], edx
lea edx, [esp + 0xc8]
mov dword [esp + 0xe8], 0x1041d4a4
mov dword [esp + 0xa8], edx
lea edx, [esp + 0xa8]
mov dword [esp + 0xac], 3
mov dword [esp + 0xb0], eax
call fcn.1010a570
mov edi, dword [esp + 4]
mov eax, dword [ebx + 0x48]
mov edx, dword [esp + 0x90]
mov ecx, dword [esp + 0x94]
mov dword [ebx + 0x48], 0
cmp eax, 1
je 0x100b958c
cmp eax, 2
jne 0x100b982e
mov eax, dword [0x104debf8]
cmp eax, 5
jb 0x100b9476
mov eax, dword [0x104debfc]
mov eax, dword [0x104d53e8]
dec eax
cmp eax, 5
jb 0x100b955e
mov ecx, dword [0x104d4588]
test ecx, ecx
je 0x100b955e
mov al, 1
cmp ecx, 1
je 0x100b94a5
cmp ecx, 2
jne 0x100b9817
mov al, 2
movzx edx, al
mov ecx, 0x104d4588
call fcn.10109d10
test al, al
je 0x100b955e
mov ecx, dword [0x104d458c]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x100b989e
mov edx, dword [ecx + 0x2c]
mov esi, dword [ecx + 0x34]
mov edi, dword [ecx + 0x38]
mov dword [esp + 0x48], 0
mov dword [esp + 0xc8], 0x1041d73c
mov dword [esp + 0xcc], 1
mov dword [esp + 0xd0], 0
mov dword [esp + 0xd8], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0xdc], 0
mov dword [esp + 0x4c], edx
mov dword [esp + 0x50], eax
mov dword [esp + 0x54], esi
lea esi, [esp + 0x48]
lea edx, [esp + 0xc8]
mov dword [esp + 0x58], edi
mov dword [esp + 0x28], esi
mov dword [esp + 0x2c], edx
lea esi, [esp + 0x28]
lea edx, [ecx + 0x2c]
mov dword [esp + 0x30], 0x10419960
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], 1
mov dword [esp + 0x6c], edx
lea edx, [esp + 0x64]
call fcn.1010a570
mov eax, dword [esp + 0x88]
test eax, eax
je 0x100b9585
lea ecx, [esp + 0x84]
push dword [esp + 0x80]
push dword [esp + 0x80]
push ecx
call dword [eax + 4]
add esp, 0xc
xor ebx, ebx
jmp 0x100b9789
mov dword [esp + 4], edx
lea edx, [esp + 0x7c]
mov dword [esp + 0x24], ebx
mov esi, dword [esp + 0x78]
mov al, byte [esp + 0x9c]
movzx ebx, word [esp + 0x9d]
mov dword [esp + 0x40], ecx
mov cl, byte [esp + 0x98]
movsd xmm0, qword [edx]
movsd xmm1, qword [edx + 8]
mov dword [esp + 0x28], esi
movsd qword [esp + 0x34], xmm1
movsd qword [esp + 0x2c], xmm0
mov byte [esp + 0x3c], al
mov word [esp + 0x3d], bx
mov edx, dword [esp + 0x38]
mov esi, dword [esp + 0x30]
test edx, edx
je 0x100b9709
test esi, esi
je 0x100b9709
mov esi, dword [esp + 4]
mov ebx, dword [ebp + 8]
mov edx, dword [esp + 0x40]
test cl, cl
mov dword [esp + 0x64], esi
mov dword [esp + 0x68], edx
mov dword [esp + 0x6c], ebx
je 0x100b9611
or al, 1
mov byte [esp + 0x3c], al
movsd xmm0, qword [esp + 0x38]
movsd xmm2, qword [esp + 0x28]
movsd xmm1, qword [esp + 0x30]
mov eax, dword [ebp + 8]
mov dword [esp + 0xc8], esi
mov dword [esp + 0xcc], edx
movsd qword [esp + 0x5b], xmm0
movsd qword [esp + 0x53], xmm1
movsd qword [esp + 0x4b], xmm2
cmp dword [eax + 0x38], esi
jbe 0x100b9847
mov ebx, dword [eax + 0x30]
imul esi, dword [esp + 4], 0xf0
cmp dword [ebx + esi], 1
jne 0x100b9847
cmp dword [ebx + esi + 0x30], edx
jne 0x100b9847
movsd xmm1, qword [esp + 0x50]
mov byte [esp + 0xc8], 0
movsd xmm0, qword [esp + 0x48]
mov eax, dword [esp + 0x5f]
lea edx, [esp + 0xc8]
mov ecx, edi
movsd qword [esp + 0xd1], xmm1
movsd xmm1, qword [esp + 0x58]
movsd qword [esp + 0xc9], xmm0
movsd qword [esp + 0xd9], xmm1
mov dword [esp + 0xe0], eax
mov dword [esp + 0x170], 0
call fcn.1009d0e0
cmp dword [ebx + esi + 0x68], 1
jne 0x100b9726
mov edx, dword [edi + 8]
cmp edx, eax
jbe 0x100b987c
mov ecx, dword [edi]
imul edx, eax, 0xb8
cmp dword [ecx + edx], 1
jne 0x100b988d
mov edi, dword [ebx + esi + 0x6c]
mov dword [ecx + edx + 0xb0], 1
mov dword [ecx + edx + 0xb4], edi
lea edx, [ebx + esi + 0x6c]
mov dword [edx], eax
jmp 0x100b9738
test edx, edx
je 0x100b91df
lea eax, [esp + 0x34]
push esi
push dword [esp + 0x30]
push eax
call dword [edx + 4]
add esp, 0xc
jmp 0x100b91df
lea ecx, [ebx + esi + 0x68]
mov dword [ecx], 1
mov dword [ebx + esi + 0x6c], eax
mov dword [ebx + esi + 0x70], eax
mov eax, dword [esp + 4]
mov edx, dword [esp + 0x40]
mov ecx, dword [ebp + 8]
mov dword [esp + 0xc8], eax
mov dword [esp + 0xcc], edx
cmp dword [ecx + 0x38], eax
mov eax, ecx
mov ecx, dword [esp + 0x24]
jbe 0x100b9855
mov eax, dword [eax + 0x30]
cmp dword [eax + esi], 1
jne 0x100b9855
cmp dword [eax + esi + 0x30], edx
jne 0x100b9855
cmp dword [eax + esi + 0x54], 0
jle 0x100b9787
lea edx, [esp + 0x64]
call fcn.100b99b0
mov bl, 1
lea ecx, [esp + 0x44]
call fcn.10012f50
mov eax, dword [esp + 8]
mov ecx, dword [esp + 0xc]
mov edx, eax
or edx, ecx
je 0x100b97bb
mov edx, dword [esp + 0x14]
mov esi, dword [edx + 8]
lea edi, [esi + 7]
neg esi
and esi, edi
add esi, dword [esp + 0x10]
push ecx
push eax
push esi
call dword [edx + 0x38]
add esp, 0xc
cmp dword [esp + 0x18], 0
je 0x100b97d7
lea ecx, [esp + 8]
mov edx, str.tracing::span_tracing::span::active
push 5
push 0xd
call fcn.10109af0
add esp, 8
mov eax, dword [esp + 8]
or eax, dword [esp + 0xc]
je 0x100b924b
mov eax, dword [esp + 0x10]
lock dec dword [eax]
jne 0x100b924b
lea ecx, [esp + 0x10]
call fcn.10116bf0
jmp 0x100b924b
mov ecx, 0x104d457c
call fcn.10109c60
test al, al
jne 0x100b92ae
jmp 0x100b943d
mov ecx, 0x104d4588
call fcn.10109c60
test al, al
jne 0x100b94a5
jmp 0x100b955e
mov ecx, str.wasnt_expecting_a_frame_to_reclaim
mov edx, 0x23
push 0x1041d72c
call fcn.1004d560
add esp, 4
ud2
lea ecx, [esp + 0xc8]
call fcn.10018f40
ud2
lea ecx, [esp + 0xc8]
call fcn.10018ef0
ud2
mov ecx, 0x1041992d
mov edx, 0x22
push 0x1041d6e8
call fcn.1000a730
add esp, 4
ud2
mov ecx, eax
push 0x1041d4cc
call fcn.10008300
add esp, 4
ud2
mov ecx, str.invalid_key
mov edx, 0xb
push 0x1041d4cc
jmp 0x100b983d
mov ecx, 0x1041992d
mov edx, 0x22
push 0x1041d744
jmp 0x100b9872