Function at 0x10082740
Capabilities:
Encode data using xor
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x828
mov eax, dword [edx]
mov esi, dword [ebp + 8]
mov dword [esp + 0x40], ecx
lea ecx, [edx + 8]
add edx, 4
cmp eax, 1
cmovne edx, ecx
test eax, eax
mov dword [esp + 0x14], edx
je 0x100867d9
lea ecx, [edx + 0x24]
lea eax, [edx + 0x30]
mov dword [esp + 0x40c], eax
mov dword [esp + 0x3c], eax
mov dword [esp + 0x174], eax
mov dword [esp + 0x24], ecx
jmp 0x10082806
mov eax, dword [esp + 0x630]
push dword [esp + 0x628]
push dword [esp + 0x628]
lea ecx, [esp + 0x634]
push ecx
call dword [eax + 4]
add esp, 0xc
mov eax, dword [esp + 0x640]
push dword [esp + 0x638]
push dword [esp + 0x638]
lea ecx, [esp + 0x644]
push ecx
call dword [eax + 4]
add esp, 0xc
lea eax, [esp + 0x5c8]
push eax
call fcn.1004fdd0
add esp, 4
lea ecx, [esp + 0x648]
call fcn.100570c0
lea ecx, [esp + 0x650]
call fcn.100547a0
mov edx, dword [esp + 0x14]
mov ecx, dword [esp + 0x24]
mov esi, dword [edx + 0x1c]
mov ebx, dword [edx + 0x24]
mov edi, ecx
mov ecx, dword [esi + 8]
test ebx, ebx
cmove edi, ebx
call fcn.100f4af0
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10084721
mov dword [esp], 0
mov al, byte [esi + 0xc]
lea edx, [esi + 8]
lea ecx, [esp + 0x78]
test al, al
jne 0x1008733d
mov eax, dword [esi + 0x110]
cmp eax, 2
jne 0x1008682d
cmp dword [esi + 0xa0], 0
jne 0x10086859
test ebx, ebx
je 0x10082ab8
mov eax, dword [edi + 4]
mov ebx, dword [edi + 8]
mov dword [esp + 4], eax
mov eax, dword [0x10551ebc]
cmp eax, 5
jb 0x100828ef
mov dword [esp + 0x78], 5
mov dword [esp + 0x7c], str.h2::proto::streams::streams
mov dword [esp + 0x80], 0x1b
mov edi, edx
mov eax, dword [0x10551ec0]
push ecx
push str.formatter_errorfailed_to_write_whole_buffer
call fcn.100361d0
add esp, 8
test al, al
je 0x100828ed
mov eax, dword [esp + 4]
mov dword [esp + 0x178], eax
mov dword [esp + 0x17c], ebx
cmp dword [esi + 0x158], eax
jbe 0x100873a2
mov eax, dword [esi + 0x150]
imul ecx, dword [esp + 4], 0xf0
cmp dword [eax + ecx], 1
jne 0x100873a2
cmp dword [eax + ecx + 0x30], ebx
jne 0x100873a2
mov edx, edi
mov eax, dword [0x10411958]
dec eax
cmp eax, 5
jb 0x10082a70
mov ecx, dword [0x10410cc0]
test ecx, ecx
je 0x10082a70
mov al, 1
cmp ecx, 1
je 0x1008291e
cmp ecx, 2
jne 0x10084cbb
mov al, 2
mov dword [esp + 8], edx
movzx edx, al
mov ecx, 0x10410cc0
call fcn.10109ff0
mov edx, dword [esp + 8]
test al, al
je 0x10082a70
mov ecx, dword [0x10410cc4]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x10087437
mov edi, dword [ecx + 0x34]
mov edx, dword [ecx + 0x2c]
mov dword [esp + 0x20], edi
mov edi, dword [ecx + 0x38]
mov dword [esp + 0x178], 0
mov dword [esp + 0x17c], edx
mov dword [esp + 0x180], eax
mov edx, dword [esp + 4]
mov eax, dword [esp + 0x20]
mov dword [esp + 0x10], edi
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], ebx
mov edi, dword [esp + 0x10]
mov dword [esp + 0x184], eax
mov dword [esp + 0x188], edi
cmp dword [esi + 0x158], edx
jbe 0x1008732c
mov eax, dword [esi + 0x150]
imul edx, dword [esp + 4], 0xf0
cmp dword [eax + edx], 1
jne 0x1008732c
cmp dword [eax + edx + 0x30], ebx
jne 0x1008732c
lea eax, [eax + edx + 0xe8]
lea edx, [esp + 0x5c8]
lea edi, [ecx + 0x2c]
mov dword [esp + 0x78], 0x10399bcc
mov dword [esp + 0x7c], 1
mov dword [esp + 0x80], 0
mov dword [esp + 0x768], edx
lea edx, [esp + 0x270]
mov dword [esp + 0x76c], 1
mov dword [esp + 0x770], edi
lea edi, [esp + 0x178]
mov dword [esp + 0x270], eax
mov dword [esp + 0x274], 0x1000b4e0
mov dword [esp + 0x88], edx
lea edx, [esp + 0x78]
mov dword [esp + 0x5c8], edi
mov dword [esp + 0x8c], 1
mov dword [esp + 0x5cc], edx
lea edx, [esp + 0x768]
mov dword [esp + 0x5d0], 0x103986f0
call fcn.1010a850
mov edx, dword [esp + 8]
nop word [eax + eax]
mov eax, dword [esp + 4]
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], ebx
cmp dword [esi + 0x158], eax
jbe 0x1008732c
mov ecx, ebx
mov ebx, dword [esi + 0x150]
imul edi, eax, 0xf0
cmp dword [ebx + edi], 1
jne 0x1008732c
cmp dword [ebx + edi + 0x30], ecx
jne 0x1008732c
cmp byte [ebx + edi + 0xe8], 0
jne 0x10086867
cmp byte [esp], 0
jne 0x10082acb
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10084ca1
mov esi, dword [edx]
mov edx, dword [0x10551f24]
test edx, edx
je 0x10082af0
cmp edx, 0x100f3390
jne 0x10082b17
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
jmp 0x10082b43
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
je 0x10082adf
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x10082b40
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push esi
call edx
mov ecx, dword [esp + 0x24]
mov esi, dword [ebp + 8]
cmp dword [ecx], 0
je 0x10082b70
mov ecx, dword [esp + 0x24]
call fcn.10026a90
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx]
lock dec dword [eax]
jne 0x10082b70
mov ecx, dword [esp + 0x24]
call fcn.10064ec0
mov ecx, dword [esp + 0x24]
mov edx, dword [esp + 0x40c]
mov dword [ecx], 0
lea ecx, [esp + 0x768]
push esi
call fcn.10087770
add esp, 4
mov al, byte [esp + 0x768]
mov ecx, eax
and cl, 7
cmp cl, 3
je 0x10086911
cmp al, 4
je 0x10086a29
push 0xa0
lea eax, [esp + 0x76c]
push eax
lea eax, [esp + 0x5d0]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov edx, dword [esp + 0x808]
mov esi, dword [esp + 0x80c]
cmp edx, 1
mov dword [esp + 0x320], edx
mov dword [esp + 0x324], esi
jne 0x10082da0
test esi, esi
lea ecx, [esp + 0x78]
je 0x10087362
mov eax, dword [esi + 0x80]
test al, 4
je 0x10082dba
mov eax, dword [0x10551ebc]
cmp eax, 5
jb 0x10082c15
mov eax, dword [0x10551ec0]
mov eax, dword [0x10411958]
dec eax
cmp eax, 5
jb 0x10082d20
mov ecx, dword [0x104116d4]
test ecx, ecx
je 0x10082d20
mov al, 1
cmp ecx, 1
je 0x10082c44
cmp ecx, 2
jne 0x10085012
mov al, 2
movzx edx, al
mov ecx, 0x104116d4
call fcn.10109ff0
test al, al
je 0x10082d20
mov ecx, dword [0x104116d8]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x1008744b
mov edx, dword [ecx + 0x2c]
mov esi, dword [ecx + 0x34]
mov edi, dword [ecx + 0x38]
mov dword [esp + 0x178], 0
mov dword [esp + 0x78], 0x10399cfc
mov dword [esp + 0x7c], 1
mov dword [esp + 0x80], 0
mov dword [esp + 0x88], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0x8c], 0
mov dword [esp + 0x17c], edx
lea edx, [esp + 0x270]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], esi
lea esi, [esp + 0x178]
lea eax, [ecx + 0x2c]
mov dword [esp + 0x188], edi
mov dword [esp + 0x338], edx
lea edx, [esp + 0x78]
mov dword [esp + 0x270], esi
mov dword [esp + 0x33c], 1
mov dword [esp + 0x340], eax
mov dword [esp + 0x274], edx
lea edx, [esp + 0x338]
mov dword [esp + 0x278], 0x103986f0
call fcn.1010a850
nop
lea ecx, [esp + 0x320]
call fcn.100648f0
cmp byte [esp + 0x608], 0xa
jb 0x10082d55
cmp dword [esp + 0x610], 0
je 0x10082d55
mov esi, dword [esp + 0x60c]
call sub.KERNEL32.dll_GetProcessHeap
push esi
push 0
push eax
call sub.KERNEL32.dll_HeapFree
cmp byte [esp + 0x61c], 2
jb 0x10082790
mov eax, dword [esp + 0x620]
mov ecx, dword [eax + 0xc]
lea edx, [eax + 8]
push dword [eax + 4]
push dword [eax]
push edx
call dword [ecx + 4]
add esp, 0xc
mov esi, dword [esp + 0x620]
call sub.KERNEL32.dll_GetProcessHeap
push esi
push 0
push eax
call sub.KERNEL32.dll_HeapFree
jmp 0x10082790
test esi, esi
lea ecx, [esp + 0x78]
je 0x10087362
mov eax, dword [esi + 0xb8]
test al, 4
jne 0x10082c06
mov dword [esp + 0x404], esi
mov dword [esp + 0x408], edx
push 0xa0
lea edi, [esp + 0x5cc]
push edi
push ecx
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push 0x88
push edi
lea esi, [esp + 0x180]
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea eax, [esp + 0x100]
lea ecx, [esp + 0x200]
movsd xmm0, qword [eax]
movsd xmm1, qword [eax + 8]
mov eax, dword [eax + 0x10]
movsd qword [ecx], xmm0
movsd qword [ecx + 8], xmm1
mov dword [ecx + 0x10], eax
mov eax, dword [ecx + 0x10]
movsd xmm0, qword [ecx]
movsd xmm1, qword [ecx + 8]
mov dword [esp + 0x308], eax
movsd qword [esp + 0x300], xmm1
movsd qword [esp + 0x2f8], xmm0
push 0x88
push edi
lea eax, [esp + 0x488]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov ecx, esi
mov edx, str.keep_aliveclient_tx_closedrequest_canceled
push 0xa
call fcn.10032b70
add esp, 4
cmp byte [esp + 0x178], 2
je 0x10087402
mov eax, dword [esp + 0x188]
movsd xmm0, qword [esp + 0x178]
movsd xmm1, qword [esp + 0x180]
mov ecx, esi
mov edx, 0x10387bf0
mov dword [esp + 0x348], eax
movsd qword [esp + 0x340], xmm1
movsd qword [esp + 0x338], xmm0
push 0x10
call fcn.10032b70
add esp, 4
cmp byte [esp + 0x178], 2
je 0x10087413
mov eax, dword [esp + 0x188]
movsd xmm2, qword [esp + 0x338]
movsd xmm3, qword [esp + 0x340]
mov ecx, dword [esp + 0x348]
movsd xmm1, qword [esp + 0x180]
lea edx, [esp + 0x100]
movsd xmm0, qword [esp + 0x178]
movsd qword [esp + 0x78], xmm2
mov dword [esp + 0x280], eax
movsd qword [esp + 0x80], xmm3
mov dword [esp + 0x88], ecx
mov dword [edx - 0x64], eax
mov eax, dword [0x10387c20]
movsd qword [esp + 0x278], xmm1
movsd qword [edx - 0x6c], xmm1
movsd xmm2, qword [0x10387c18]
movsd xmm1, qword [0x10387c10]
movsd qword [edx - 0x74], xmm0
movsd qword [esp + 0x270], xmm0
mov dword [edx - 0x50], eax
mov eax, dword [0x103985d0]
movsd qword [edx - 0x58], xmm2
movsd qword [edx - 0x60], xmm1
movsd xmm2, qword [0x103985c8]
movsd xmm1, qword [0x103985c0]
mov dword [edx - 0x3c], eax
mov eax, dword [0x10387c34]
movsd qword [edx - 0x44], xmm2
movsd qword [edx - 0x4c], xmm1
movsd xmm2, qword [0x10387c2c]
movsd xmm1, qword [0x10387c24]
mov dword [edx - 0x28], eax
mov eax, dword [0x10386a5c]
movsd qword [edx - 0x30], xmm2
movsd qword [edx - 0x38], xmm1
movsd xmm2, qword [0x10386a54]
movsd xmm1, qword [0x10386a4c]
mov dword [edx - 0x14], eax
mov eax, dword [0x10387c48]
movsd qword [edx - 0x1c], xmm2
movsd qword [edx - 0x24], xmm1
movsd xmm2, qword [0x10387c40]
movsd xmm1, qword [0x10387c38]
mov dword [edx], eax
lea eax, [esp + 0x78]
movsd qword [edx - 8], xmm2
movsd qword [edx - 0x10], xmm1
mov dword [esp + 8], eax
nop dword [eax + eax]
mov eax, dword [esp + 0x4a8]
test eax, eax
mov dword [esp + 0x30], eax
je 0x10083460
mov edx, dword [esp + 0x484]
mov ecx, dword [esp + 0x480]
push dword [esp + 8]
push dword [esp + 0x498]
push dword [esp + 0x498]
push dword [esp + 0x498]
push dword [esp + 0x498]
call fcn.1003fd10
add esp, 0x14
movzx ecx, word [esp + 0x4b8]
mov edx, dword [esp + 0x49c]
mov esi, dword [esp + 0x4a0]
mov ebx, dword [esp + 0x498]
mov dword [esp + 0x20], eax
mov dword [esp], 0
and eax, ecx
mov dword [esp + 0x10], ecx
mov dword [esp + 0x1c], esi
mov dword [esp + 0x2c], edx
jmp 0x1008309a
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x18]
mov edx, dword [esp + 8]
movzx eax, byte [eax + ecx + 1]
cmp al, byte [edx + 1]
je 0x10083148
nop dword [eax + eax]
inc dword [esp]
mov edx, dword [esp + 0x2c]
inc esi
mov eax, esi
mov esi, eax
cmp eax, edx
mov eax, 0
jae 0x1008309a
movzx ecx, word [ebx + esi*4]
cmp ecx, 0xffff
je 0x10083460
mov edi, dword [esp + 0x10]
movzx eax, word [ebx + esi*4 + 2]
mov dword [esp + 4], ecx
mov edx, esi
mov ecx, edi
and ecx, eax
sub edx, ecx
and edx, edi
mov edi, dword [esp + 4]
cmp dword [esp], edx
ja 0x10083460
cmp ax, word [esp + 0x20]
jne 0x10083090
cmp dword [esp + 0x30], edi
jbe 0x100872ee
mov eax, dword [esp + 0x1c]
imul edx, edi, 0x38
mov ecx, dword [esp + 8]
movzx eax, byte [eax + edx]
cmp al, byte [ecx]
jne 0x10083090
test al, al
mov dword [esp + 0x18], edx
je 0x10083071
mov eax, dword [esp + 0x1c]
mov edx, dword [esp + 0x18]
mov ecx, dword [esp + 8]
mov eax, dword [eax + edx + 8]
cmp eax, dword [ecx + 8]
jne 0x10083090
mov ecx, dword [esp + 0x1c]
mov ecx, dword [ecx + edx + 4]
mov edx, dword [esp + 8]
mov edx, dword [edx + 4]
cmp ecx, edx
je 0x10083148
push eax
push edx
push ecx
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x10083090
mov eax, dword [esp + 0x4a8]
cmp eax, edi
jbe 0x1008737b
mov edx, dword [esp + 0x1c]
mov ebx, dword [esp + 0x18]
cmp dword [edx + ebx + 0x28], 1
jne 0x10083214
lea ecx, [esp + 0x178]
push dword [edx + ebx + 0x2c]
lea ebx, [esp + 0x4b0]
push ebx
push eax
call fcn.10041940
add esp, 0xc
cmp dword [esp + 0x194], 1
lea ebx, [esp + 0x180]
jne 0x100831f8
nop dword [eax + eax]
mov eax, dword [esp + 0x198]
mov dword [esp], eax
mov eax, dword [esp + 0x184]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push ebx
call dword [eax + 4]
add esp, 0xc
mov edx, dword [esp + 0x4a0]
lea ecx, [esp + 0x178]
push dword [esp]
lea eax, [esp + 0x4b0]
push eax
push dword [esp + 0x4b0]
call fcn.10041940
add esp, 0xc
cmp dword [esp + 0x194], 1
je 0x100831a0
mov eax, dword [esp + 0x184]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push ebx
call dword [eax + 4]
add esp, 0xc
lea ecx, [esp + 0x178]
lea edx, [esp + 0x480]
push edi
push esi
call fcn.100d7c10
add esp, 8
lea ecx, [esp + 0x200]
cmp byte [esp + 0x178], 0
mov eax, dword [ecx - 0x64]
movsd xmm0, qword [ecx - 0x74]
movsd xmm1, qword [ecx - 0x6c]
mov dword [esp + 0x280], eax
movsd qword [esp + 0x278], xmm1
movsd qword [esp + 0x270], xmm0
je 0x10083286
mov eax, dword [esp + 0x188]
push dword [esp + 0x180]
push dword [esp + 0x180]
lea ecx, [esp + 0x18c]
push ecx
call dword [eax + 4]
add esp, 0xc
cmp byte [esp + 0x280], 2
je 0x10083468
mov eax, dword [esp + 0x27c]
push dword [esp + 0x274]
push dword [esp + 0x274]
lea ecx, [esp + 0x280]
push ecx
call dword [eax + 4]
add esp, 0xc
mov eax, dword [0x10551ebc]
cmp eax, 2
jb 0x10083309
mov dword [esp + 0x178], 2
mov dword [esp + 0x17c], str.hyper::proto::h2
mov dword [esp + 0x180], 0x10
mov eax, dword [0x10551ec0]
lea eax, [esp + 0x178]
push eax
push str.formatter_errorfailed_to_write_whole_buffer
call fcn.100361d0
add esp, 8
test al, al
je 0x10083309
mov ecx, dword [esp + 8]
call fcn.10041cb0
mov eax, dword [0x10411958]
and eax, 0xfffffffe
cmp eax, 4
je 0x10083468
mov ecx, dword [0x104118b4]
test ecx, ecx
je 0x10083468
mov al, 1
cmp ecx, 1
je 0x1008333a
cmp ecx, 2
jne 0x10083484
mov al, 2
movzx edx, al
mov ecx, 0x104118b4
call fcn.10109ff0
test al, al
je 0x10083468
mov esi, dword [0x104118b8]
mov eax, dword [esi + 0x30]
test eax, eax
je 0x10087389
mov ecx, dword [esi + 0x2c]
mov edx, dword [esi + 0x34]
mov edi, dword [esi + 0x38]
mov dword [esp + 0x270], 0
mov dword [esp + 0x274], ecx
mov ecx, dword [esp + 8]
mov dword [esp + 0x278], eax
mov dword [esp + 0x27c], edx
mov dword [esp + 0x280], edi
lea edi, [esi + 0x2c]
call fcn.10041cb0
lea ecx, [esp + 0x338]
mov dword [esp + 0x668], eax
mov dword [esp + 0x66c], edx
lea edx, [esp + 0x668]
mov dword [esp + 0x178], 0x10387c4c
mov dword [esp + 0x17c], 1
mov dword [esp + 0x180], 0
mov dword [esp + 0x508], ecx
lea ecx, [esp + 0x410]
mov dword [esp + 0x410], edx
lea edx, [esp + 0x270]
mov dword [esp + 0x50c], 1
mov dword [esp + 0x510], edi
mov dword [esp + 0x414], 0x100093b0
mov dword [esp + 0x188], ecx
lea ecx, [esp + 0x178]
mov dword [esp + 0x338], edx
lea edx, [esp + 0x508]
mov dword [esp + 0x18c], 1
mov dword [esp + 0x33c], ecx
mov ecx, esi
mov dword [esp + 0x340], 0x10384cd8
call fcn.1010a850
jmp 0x10083468
mov byte [esp + 0x280], 2
mov ecx, dword [esp + 8]
lea eax, [esp + 0x104]
add ecx, 0x14
cmp ecx, eax
mov dword [esp + 8], ecx
jne 0x10082ff0
jmp 0x100834a0
mov ecx, 0x104118b4
call fcn.10109f40
test al, al
jne 0x1008333a
jmp 0x10083468
mov eax, dword [0x10387c74]
movsd xmm0, qword [0x10387c6c]
movsd xmm1, qword [0x10387c64]
mov dword [esp + 0x6f8], eax
mov eax, dword [esp + 0x4a8]
movsd qword [esp + 0x6f0], xmm0
movsd qword [esp + 0x6e8], xmm1
test eax, eax
mov dword [esp + 0x18], eax
je 0x10083880
mov edx, dword [esp + 0x484]
mov ecx, dword [esp + 0x480]
lea eax, [esp + 0x6e8]
push eax
push dword [esp + 0x498]
push dword [esp + 0x498]
push dword [esp + 0x498]
push dword [esp + 0x498]
call fcn.1003fd10
add esp, 0x14
movzx ecx, word [esp + 0x4b8]
mov dword [esp + 0x10], eax
mov esi, dword [esp + 0x4a0]
mov edx, dword [esp + 0x498]
mov edi, dword [esp + 0x49c]
mov ebx, dword [esp + 0x6ec]
mov dword [esp], 0
and eax, ecx
mov dword [esp + 8], ecx
mov cl, byte [esp + 0x6e8]
mov dword [esp + 0x30], esi
mov esi, dword [esp + 0x6f0]
mov dword [esp + 0x50], ebx
mov dword [esp + 0x20], edx
mov dword [esp + 0x2c], edi
mov byte [esp + 0x1c], cl
mov cl, byte [esp + 0x6e9]
mov dword [esp + 0x28], esi
mov byte [esp + 0x34], cl
jmp 0x100835af
mov eax, dword [esp + 0x30]
movzx ecx, byte [esp + 0x34]
cmp byte [eax + edi + 1], cl
je 0x1008365a
nop word cs:[eax + eax]
inc edx
mov edi, dword [esp + 0x2c]
inc esi
mov dword [esp], edx
mov edx, dword [esp + 0x20]
mov eax, esi
mov esi, eax
cmp eax, edi
mov eax, 0
jae 0x100835af
movzx ecx, word [edx + esi*4]
mov dword [esp + 4], 0
cmp ecx, 0xffff
je 0x10083670
mov edi, dword [esp + 8]
movzx eax, word [edx + esi*4 + 2]
mov ebx, esi
mov edx, edi
and edx, eax
sub ebx, edx
mov edx, dword [esp]
and ebx, edi
cmp edx, ebx
ja 0x10083670
cmp ax, word [esp + 0x10]
jne 0x100835a0
cmp dword [esp + 0x18], ecx
jbe 0x10087337
movzx eax, byte [esp + 0x1c]
mov ebx, dword [esp + 0x30]
imul edi, ecx, 0x38
cmp byte [ebx + edi], al
jne 0x100835a0
cmp byte [esp + 0x1c], 1
jne 0x10083583
mov eax, dword [esp + 0x28]
mov ecx, dword [esp + 0x30]
cmp dword [ecx + edi + 8], eax
jne 0x100835a0
mov eax, dword [esp + 0x30]
mov eax, dword [eax + edi + 4]
cmp eax, dword [esp + 0x50]
je 0x1008365a
push dword [esp + 0x28]
push dword [esp + 0x54]
push eax
call sub.VCRUNTIME140.dll_memcmp
mov edx, dword [esp + 0xc]
add esp, 0xc
test eax, eax
jne 0x100835a0
mov eax, dword [esp + 0x30]
lea eax, [eax + edi + 0x14]
mov dword [esp + 4], eax
nop word cs:[eax + eax]
cmp byte [esp + 0x1c], 0
je 0x10083697
mov eax, dword [esp + 0x6f8]
push dword [esp + 0x28]
push dword [esp + 0x6f0]
lea ecx, [esp + 0x6fc]
push ecx
call dword [eax + 4]
add esp, 0xc
mov eax, dword [esp + 4]
test eax, eax
je 0x10083880
cmp dword [eax + 4], 8
jne 0x100836d1
mov eax, dword [eax]
cmp eax, str.trailers_8
je 0x10083880
mov ecx, dword [eax]
mov eax, dword [eax + 4]
mov edx, 0x69617274
mov esi, 0x7372656c
xor ecx, edx
xor eax, esi
or eax, ecx
je 0x10083880
mov eax, dword [0x10551ebc]
cmp eax, 2
jb 0x100836e0
mov eax, dword [0x10551ec0]
mov eax, dword [0x10411958]
lea esi, [esp + 0x180]
and eax, 0xfffffffe
cmp eax, 4
je 0x10083802
mov ecx, dword [0x104118c0]
test ecx, ecx
je 0x10083802
mov al, 1
cmp ecx, 1
je 0x10083718
cmp ecx, 2
jne 0x10085b14
mov al, 2
movzx edx, al
mov ecx, 0x104118c0
call fcn.10109ff0
test al, al
je 0x10083802
mov ecx, dword [0x104118c4]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x1008745f
mov edx, dword [ecx + 0x2c]
mov esi, dword [ecx + 0x34]
mov edi, dword [ecx + 0x38]
mov dword [esp + 0x270], 0
mov dword [esp + 0x178], 0x10387c80
mov dword [esp + 0x17c], 1
mov dword [esp + 0x180], 0
mov dword [esp + 0x188], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0x18c], 0
mov dword [esp + 0x274], edx
lea edx, [esp + 0x338]
mov dword [esp + 0x278], eax
mov dword [esp + 0x27c], esi
mov dword [esp + 0x280], edi
lea edi, [esp + 0x270]
lea eax, [ecx + 0x2c]
mov dword [esp + 0x508], edx
lea edx, [esp + 0x178]
mov dword [esp + 0x338], edi
mov dword [esp + 0x50c], 1
mov dword [esp + 0x510], eax
mov dword [esp + 0x33c], edx
lea edx, [esp + 0x508]
mov dword [esp + 0x340], 0x10384cd8
call fcn.1010a850
lea esi, [esp + 0x180]
mov eax, dword [0x10387c74]
movsd xmm0, qword [0x10387c64]
movsd xmm1, qword [0x10387c6c]
lea ecx, [esp + 0x178]
lea edx, [esp + 0x480]
mov dword [esp + 0x678], eax
lea eax, [esp + 0x668]
movsd qword [esp + 0x668], xmm0
movsd qword [esp + 0x670], xmm1
push eax
call fcn.10045020
add esp, 4
cmp byte [esp + 0x188], 2
je 0x10083880
mov eax, dword [esp + 0x184]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push esi
call dword [eax + 4]
add esp, 0xc
nop dword [eax + eax]
mov eax, dword [0x1039a830]
movsd xmm0, qword [0x1039a820]
movsd xmm1, qword [0x1039a828]
lea ecx, [esp + 0x3c0]
lea edx, [esp + 0x480]
mov dword [esp + 0x518], eax
lea eax, [esp + 0x508]
movsd qword [esp + 0x508], xmm0
movsd qword [esp + 0x510], xmm1
push eax
call fcn.10045020
add esp, 4
cmp byte [esp + 0x3d0], 2
jne 0x10083aa0
xor ebx, ebx
cmp byte [esp + 0x78], 0
je 0x10083906
mov eax, dword [esp + 0x88]
push dword [esp + 0x80]
push dword [esp + 0x80]
lea ecx, [esp + 0x8c]
push ecx
call dword [eax + 4]
add esp, 0xc
cmp byte [esp + 0x8c], 0
je 0x10083933
mov eax, dword [esp + 0x9c]
push dword [esp + 0x94]
push dword [esp + 0x94]
lea ecx, [esp + 0xa0]
push ecx
call dword [eax + 4]
add esp, 0xc
cmp byte [esp + 0xa0], 0
je 0x10083960
mov eax, dword [esp + 0xb0]
push dword [esp + 0xa8]
push dword [esp + 0xa8]
lea ecx, [esp + 0xb4]
push ecx
call dword [eax + 4]
add esp, 0xc
cmp byte [esp + 0xb4], 0
je 0x1008398d
mov eax, dword [esp + 0xc4]
push dword [esp + 0xbc]
push dword [esp + 0xbc]
lea ecx, [esp + 0xc8]
push ecx
call dword [eax + 4]
add esp, 0xc
cmp byte [esp + 0xc8], 0
je 0x100839ba
mov eax, dword [esp + 0xd8]
push dword [esp + 0xd0]
push dword [esp + 0xd0]
lea ecx, [esp + 0xdc]
push ecx
call dword [eax + 4]
add esp, 0xc
cmp byte [esp + 0xdc], 0
je 0x100839e7
mov eax, dword [esp + 0xec]
push dword [esp + 0xe4]
push dword [esp + 0xe4]
lea ecx, [esp + 0xf0]
push ecx
call dword [eax + 4]
add esp, 0xc
cmp byte [esp + 0xf0], 0
je 0x10083a14
mov eax, dword [esp + 0x100]
push dword [esp + 0xf8]
push dword [esp + 0xf8]
lea ecx, [esp + 0x104]
push ecx
call dword [eax + 4]
add esp, 0xc
cmp byte [esp + 0x3d0], 2
sete al
or bl, al
jne 0x10083a46
mov eax, dword [esp + 0x3cc]
push dword [esp + 0x3c4]
push dword [esp + 0x3c4]
lea ecx, [esp + 0x3d0]
push ecx
call dword [eax + 4]
add esp, 0xc
cmp dword [esp + 0x2f8], 1
jne 0x10084510
mov eax, dword [esp + 0x300]
push dword [esp + 0x2fc]
lea ecx, [esp + 0x7c]
push ecx
call dword [eax + 0x18]
add esp, 8
mov ecx, dword [esp + 0x78]
mov esi, dword [esp + 0x7c]
mov ebx, dword [esp + 0x84]
mov edi, dword [esp + 0x80]
mov eax, dword [esp + 0x8c]
mov edx, dword [esp + 0x88]
jmp 0x10084558
mov eax, dword [esp + 0x3d0]
movsd xmm0, qword [esp + 0x3c0]
movsd xmm1, qword [esp + 0x3c8]
mov dword [esp + 0x598], eax
movsd qword [esp + 0x590], xmm1
movsd qword [esp + 0x588], xmm0
mov eax, dword [0x10551ebc]
cmp eax, 2
jb 0x10083b25
mov dword [esp + 0x178], 2
mov dword [esp + 0x17c], str.hyper::proto::h2
mov dword [esp + 0x180], 0x10
mov eax, dword [0x10551ec0]
lea eax, [esp + 0x178]
push eax
push str.formatter_errorfailed_to_write_whole_buffer
call fcn.100361d0
add esp, 8
test al, al
je 0x10083b25
mov ecx, 0x1039a820
call fcn.10041cb0
mov eax, dword [0x10411958]
and eax, 0xfffffffe
cmp eax, 4
je 0x10083c70
mov ecx, dword [0x104118cc]
test ecx, ecx
je 0x10083c70
mov al, 1
cmp ecx, 1
je 0x10083b56
cmp ecx, 2
jne 0x10085163
mov al, 2
movzx edx, al
mov ecx, 0x104118cc
call fcn.10109ff0
test al, al
je 0x10083c70
mov esi, dword [0x104118d0]
mov eax, dword [esi + 0x30]
test eax, eax
je 0x10087473
mov ecx, dword [esi + 0x2c]
mov edx, dword [esi + 0x34]
mov edi, dword [esi + 0x38]
mov dword [esp + 0x270], 0
mov dword [esp + 0x274], ecx
mov ecx, 0x1039a820
mov dword [esp + 0x278], eax
mov dword [esp + 0x27c], edx
mov dword [esp + 0x280], edi
lea edi, [esi + 0x2c]
call fcn.10041cb0
lea ecx, [esp + 0x338]
mov dword [esp + 0x60], eax
mov dword [esp + 0x64], edx
lea edx, [esp + 0x60]
mov dword [esp + 0x178], 0x10387c4c
mov dword [esp + 0x17c], 1
mov dword [esp + 0x180], 0
mov dword [esp + 0x410], ecx
lea ecx, [esp + 0x458]
mov dword [esp + 0x458], edx
lea edx, [esp + 0x270]
mov dword [esp + 0x414], 1
mov dword [esp + 0x418], edi
mov dword [esp + 0x45c], 0x100093b0
mov dword [esp + 0x188], ecx
lea ecx, [esp + 0x178]
mov dword [esp + 0x338], edx
lea edx, [esp + 0x410]
mov dword [esp + 0x18c], 1
mov dword [esp + 0x33c], ecx
mov ecx, esi
mov dword [esp + 0x340], 0x10384cd8
call fcn.1010a850
nop word cs:[eax + eax]
mov ecx, dword [esp + 0x588]
mov eax, dword [esp + 0x58c]
xor edx, edx
cmp eax, edx
je 0x10083ca0
movzx ebx, byte [ecx + edx]
inc edx
cmp bl, 9
je 0x10083c80
add bl, 0xe0
cmp bl, 0x5f
jb 0x10083c80
jmp 0x10087309
mov dword [esp + 0x338], 0
mov dword [esp + 0x33c], eax
mov dword [esp + 0x340], ecx
mov dword [esp + 0x344], eax
mov dword [esp + 0x348], 0
mov dword [esp + 0x34c], eax
mov dword [esp + 0x350], 0x2c
mov dword [esp + 0x354], 1
mov dword [esp + 0x358], 0x2c
mov word [esp + 0x35c], 1
jmp 0x10083d08
mov byte [esp + 0x420], 2
lea ecx, [esp + 0x338]
call fcn.10048480
test eax, eax
je 0x10084590
mov ecx, eax
call fcn.1000c890
mov esi, edx
mov edx, eax
lea ecx, [esp + 0x178]
push 0x1039efdf
lea eax, [esp + 0x274]
push eax
push esi
call fcn.1002de30
add esp, 0xc
movzx edx, byte [esp + 0x178]
cmp dx, 2
je 0x10083d00
mov eax, dword [esp + 0x4a8]
test eax, eax
mov dword [esp + 0x30], eax
je 0x10083d00
mov cl, byte [esp + 0x179]
mov edi, dword [esp + 0x180]
movzx eax, dx
mov byte [esp + 0x4f], cl
movzx esi, cl
mov ecx, dword [esp + 0x17c]
mov dword [esp + 0x1c], edi
mov dword [esp + 0x34], ecx
mov ecx, dword [esp + 0x480]
xor ecx, 2
or ecx, dword [esp + 0x484]
mov cl, byte [esp + 0x184]
mov byte [esp + 0x50], cl
jne 0x10083ec3
mov ecx, dword [esp + 0x488]
mov dword [esp + 4], eax
mov eax, edx
mov edx, dword [esp + 0x48c]
mov edi, dword [esp + 0x490]
mov ebx, dword [esp + 0x494]
mov dword [esp], esi
mov dword [esp + 0x20], eax
mov esi, ecx
mov dword [esp + 0x178], ecx
mov dword [esp + 0x17c], edx
mov dword [esp + 0x180], edi
mov dword [esp + 0x184], ebx
xor ecx, 0x6e657261
xor esi, 0x70736575
mov dword [esp + 0x188], esi
mov esi, edx
xor edx, 0x6c796765
xor esi, 0x736f6d65
mov dword [esp + 0x18c], esi
mov dword [esp + 0x194], edx
mov edx, edi
mov esi, ebx
mov dword [esp + 0x190], ecx
xor edi, 0x79746573
xor ebx, 0x74656462
xor edx, 0x6e646f6d
xor esi, 0x646f7261
cmp al, 1
mov dword [esp + 0x198], edx
lea edx, [esp + 0x200]
mov dword [esp + 0x19c], esi
mov dword [esp + 0x1a0], edi
mov dword [esp + 0x1a4], ebx
mov dword [edx - 0x58], 0
mov dword [edx - 0x50], 0
mov dword [edx - 0x4c], 0
mov dword [edx - 0x54], 0
jne 0x10083f16
lea ebx, [esp + 0x178]
mov dword [esp + 0x60], 1
lea edx, [esp + 0x60]
mov ecx, ebx
push 4
call fcn.10018260
add esp, 4
cmp byte [esp + 0x50], 0
je 0x1008445a
mov edx, dword [esp + 0x34]
mov ecx, ebx
push dword [esp + 0x1c]
jmp 0x10083f44
cmp dl, 1
jne 0x10084160
cmp byte [esp + 0x50], 0
je 0x100844aa
test edi, edi
je 0x100844f5
mov ebx, dword [esp + 0x34]
mov esi, 0xad2aca77
mov edx, 0x47985764
nop dword [eax]
movzx ecx, byte [ebx]
imul esi, esi, 0x1b3
inc ebx
xor ecx, edx
mov edx, 0x1b3
mov eax, ecx
shl ecx, 8
mul edx
add ecx, edx
mov edx, eax
add esi, ecx
dec edi
jne 0x10083ef0
jmp 0x100844e8
mov eax, dword [esp + 4]
lea esi, [esp + 0x178]
lea edi, [esp + 0x60]
mov ecx, esi
mov edx, edi
mov dword [esp + 0x60], eax
push 4
call fcn.10018260
add esp, 4
mov eax, dword [esp]
mov ecx, esi
mov edx, edi
mov dword [esp + 0x60], eax
push 4
call fcn.10018260
add esp, 4
mov eax, dword [esp + 0x1b0]
mov edx, dword [esp + 0x1a8]
mov esi, dword [esp + 0x1a0]
mov ecx, dword [esp + 0x1a4]
mov ebx, dword [esp + 0x19c]
shl eax, 0x18
mov dword [esp + 0x18], edx
xor esi, edx
mov edx, dword [esp + 0x188]
or eax, dword [esp + 0x1ac]
mov dword [esp + 0x2c], eax
xor ecx, eax
mov eax, dword [esp + 0x198]
add edx, eax
mov edi, eax
mov dword [esp], edx
mov edx, dword [esp + 0x18c]
adc edx, ebx
shld edi, ebx, 0xd
shld ebx, eax, 0xd
mov eax, dword [esp + 0x190]
mov dword [esp + 0x10], edx
xor ebx, edx
mov edx, dword [esp + 0x194]
xor edi, dword [esp]
add eax, esi
mov dword [esp + 8], eax
mov eax, esi
adc edx, ecx
shrd esi, ecx, 0x10
shld eax, ecx, 0x10
mov dword [esp + 4], edx
xor esi, edx
mov edx, dword [esp]
xor eax, dword [esp + 8]
add dword [esp + 0x10], eax
mov ecx, eax
adc edx, esi
shrd eax, esi, 0xb
shld ecx, esi, 0x15
mov esi, edi
mov dword [esp], edx
xor eax, edx
mov edx, dword [esp + 0x10]
xor ecx, edx
add dword [esp + 8], edi
adc dword [esp + 4], ebx
shld esi, ebx, 0x11
shrd edi, ebx, 0xf
mov ebx, dword [esp]
xor edx, dword [esp + 0x18]
xor esi, dword [esp + 8]
xor ebx, dword [esp + 0x2c]
mov dword [esp], ebx
mov ebx, dword [esp + 4]
xor edi, ebx
xor ebx, 0xff
add edx, esi
mov dword [esp + 4], ebx
mov ebx, dword [esp]
mov dword [esp + 0x10], edx
mov edx, esi
adc ebx, edi
shld edx, edi, 0xd
shrd esi, edi, 0x13
mov edi, ecx
mov dword [esp], ebx
xor esi, ebx
xor edx, dword [esp + 0x10]
add dword [esp + 4], ecx
mov ebx, dword [esp + 8]
adc ebx, eax
shld edi, eax, 0x10
shrd ecx, eax, 0x10
xor edi, dword [esp + 4]
xor ecx, ebx
mov dword [esp + 8], ebx
mov ebx, dword [esp + 0x10]
add dword [esp], edi
mov eax, edi
adc ebx, ecx
shld eax, ecx, 0x15
shrd edi, ecx, 0xb
mov ecx, edx
mov dword [esp + 0x10], ebx
xor edi, ebx
xor eax, dword [esp]
add dword [esp + 4], edx
mov ebx, dword [esp + 8]
adc ebx, esi
shld ecx, esi, 0x11
shrd edx, esi, 0xf
mov esi, dword [esp]
xor ecx, dword [esp + 4]
xor edx, ebx
mov dword [esp + 8], ebx
add esi, ecx
mov ebx, ecx
adc dword [esp + 0x10], edx
shld ebx, edx, 0xd
shrd ecx, edx, 0x13
mov dword [esp], esi
mov edx, eax
xor ebx, esi
xor ecx, dword [esp + 0x10]
add dword [esp + 8], eax
mov esi, dword [esp + 4]
adc esi, edi
shrd eax, edi, 0x10
shld edx, edi, 0x10
mov dword [esp + 4], esi
xor eax, esi
mov esi, dword [esp + 8]
xor edx, esi
add dword [esp + 0x10], edx
mov edi, edx
adc dword [esp], eax
shld edi, eax, 0x15
shrd edx, eax, 0xb
mov eax, dword [esp + 4]
xor edx, dword [esp]
xor edi, dword [esp + 0x10]
add esi, ebx
mov dword [esp + 8], esi
mov esi, ebx
adc eax, ecx
shld esi, ecx, 0x11
shrd ebx, ecx, 0xf
mov ecx, dword [esp + 0x10]
xor esi, dword [esp + 8]
xor ebx, eax
mov dword [esp + 4], eax
add ecx, esi
mov eax, esi
adc dword [esp], ebx
shld eax, ebx, 0xd
shrd esi, ebx, 0x13
mov ebx, dword [esp + 4]
xor eax, ecx
mov ecx, dword [esp + 8]
xor esi, dword [esp]
add ebx, edi
adc ecx, edx
shrd edi, edx, 0x10
mov edx, esi
xor edi, ecx
shr edi, 0xb
add ebx, eax
adc ecx, esi
shr edx, 0xf
xor edx, edi
xor edx, ecx
xor edx, ebx
cmp byte [esp + 0x20], 0
sete al
jmp 0x10084178
xor eax, 0x2325
movzx ecx, si
imul eax, eax, 0xffffbc91
xor ecx, eax
mov al, 1
imul edx, ecx, 0xffffbc91
mov dword [esp + 0x18], eax
movzx eax, word [esp + 0x4b8]
and edx, 0x7fff
mov esi, dword [esp + 0x49c]
mov edi, dword [esp + 0x498]
mov dword [esp], 0
mov dword [esp + 0x10], edx
movzx ecx, ax
mov eax, edx
mov dword [esp + 0x20], esi
mov dword [esp + 8], ecx
and eax, ecx
mov ecx, dword [esp + 0x4a0]
mov dword [esp + 0x2c], ecx
mov ecx, esi
jmp 0x100841da
inc dword [esp]
mov ecx, dword [esp + 0x20]
inc esi
mov eax, esi
mov esi, eax
cmp eax, ecx
mov eax, 0
jae 0x100841da
movzx eax, word [edi + esi*4]
cmp eax, 0xffff
mov dword [esp + 4], eax
je 0x10083d00
mov ebx, dword [esp + 8]
movzx eax, word [edi + esi*4 + 2]
mov edx, esi
mov ecx, ebx
and ecx, eax
sub edx, ecx
and edx, ebx
cmp dword [esp], edx
mov edx, dword [esp + 0x10]
ja 0x10083d00
cmp ax, dx
jne 0x100841d0
mov ecx, dword [esp + 4]
cmp dword [esp + 0x30], ecx
jbe 0x10087303
mov eax, dword [esp + 0x2c]
imul ebx, ecx, 0x38
cmp byte [eax + ebx], 1
jne 0x10084288
cmp byte [esp + 0x18], 0
jne 0x100841d0
mov eax, dword [esp + 0x2c]
cmp byte [esp + 0x50], 0
mov ecx, dword [eax + ebx + 4]
mov dword [esp + 0x28], ecx
mov ecx, dword [eax + ebx + 8]
je 0x100842a7
cmp ecx, dword [esp + 0x1c]
jne 0x100841d0
mov eax, dword [esp + 0x28]
cmp eax, dword [esp + 0x34]
je 0x100842e4
push dword [esp + 0x1c]
push dword [esp + 0x38]
push dword [esp + 0x30]
call sub.VCRUNTIME140.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x100841d0
jmp 0x100842e4
cmp byte [esp + 0x18], 0
je 0x100841d0
mov al, byte [esp + 0x4f]
mov ecx, dword [esp + 0x2c]
cmp byte [ecx + ebx + 1], al
jne 0x100841d0
jmp 0x100842e4
cmp ecx, dword [esp + 0x1c]
jne 0x100841d0
xor ecx, ecx
nop word cs:[eax + eax]
nop dword [eax]
cmp dword [esp + 0x1c], ecx
je 0x100842e4
mov eax, dword [esp + 0x34]
movzx edx, byte [eax + ecx]
mov eax, dword [esp + 0x28]
movzx eax, byte [eax + ecx]
inc ecx
cmp al, byte [edx + 0x1039efdf]
je 0x100842c0
jmp 0x100841d0
mov eax, dword [esp + 0x4a8]
mov ecx, dword [esp + 4]
cmp eax, ecx
jbe 0x1008737d
mov edx, dword [esp + 0x2c]
mov edi, ebx
cmp dword [edx + ebx + 0x28], 1
lea ebx, [esp + 0x4ac]
jne 0x100843af
lea ecx, [esp + 0x178]
push dword [edx + edi + 0x2c]
push ebx
push eax
call fcn.10041940
add esp, 0xc
cmp dword [esp + 0x194], 1
lea edi, [esp + 0x180]
jne 0x10084393
nop dword [eax]
mov ebx, dword [esp + 0x198]
mov eax, dword [esp + 0x184]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push edi
call dword [eax + 4]
add esp, 0xc
mov edx, dword [esp + 0x4a0]
lea ecx, [esp + 0x178]
push ebx
lea eax, [esp + 0x4b0]
push eax
push dword [esp + 0x4b0]
call fcn.10041940
add esp, 0xc
cmp dword [esp + 0x194], 1
je 0x10084340
mov eax, dword [esp + 0x184]
push dword [esp + 0x17c]
push dword [esp + 0x17c]
push edi
call dword [eax + 4]
add esp, 0xc
lea ecx, [esp + 0x178]
lea edx, [esp + 0x480]
push dword [esp + 4]
push esi
call fcn.100d7c10
add esp, 8
lea ecx, [esp + 0x200]
cmp byte [esp + 0x178], 0
mov eax, dword [ecx - 0x64]
movsd xmm0, qword [ecx - 0x74]
movsd xmm1, qword [ecx - 0x6c]
mov dword [esp + 0x420], eax
movsd qword [esp + 0x418], xmm1
movsd qword [esp + 0x410], xmm0
je 0x10084424
mov eax, dword [esp + 0x188]
push dword [esp + 0x180]
push dword [esp + 0x180]
lea ecx, [esp + 0x18c]
push ecx
call dword [eax + 4]
add esp, 0xc
cmp byte [esp + 0x420], 2
je 0x10083d08
mov eax, dword [esp + 0x41c]
push dword [esp + 0x414]
push dword [esp + 0x414]
lea ecx, [esp + 0x420]
push ecx
call dword [eax + 4]
add esp, 0xc
jmp 0x10083d08
cmp dword [esp + 0x1c], 0
lea ebx, [esp + 0x60]
je 0x10083f4c
mov esi, dword [esp + 0x1c]
mov edi, dword [esp + 0x34]
nop word cs:[eax + eax]
nop dword [eax + eax]
movzx eax, byte [edi]
inc edi
lea ecx, [esp + 0x178]
mov edx, ebx
movzx eax, byte [eax + 0x1039efdf]
mov byte [esp + 0x60], al
push 1
call fcn.10018260
add esp, 4
dec esi
jne 0x10084480
jmp 0x10083f4c
test edi, edi
je 0x100844f5
mov ebx, dword [esp + 0x34]
mov esi, 0xad2aca77
mov edx, 0x47985764
movzx eax, byte [ebx]
imul esi, esi, 0x1b3
inc ebx
movzx ecx, byte [eax + 0x1039efdf]
xor ecx, edx
mov edx, 0x1b3
mov eax, ecx
shl ecx, 8
mul edx
add ecx, edx
mov edx, eax
add esi, ecx
dec edi
jne 0x100844c0
mov dword [esp + 0x18], 0
jmp 0x1008417c
mov dx, 0x5764
mov dword [esp + 0x18], 0
jmp 0x1008417c
mov edx, dword [esp + 0x300]
xor eax, eax
mov dword [esp + 0x7c], 0
mov edi, 1
xor ebx, ebx
xor esi, esi
mov dword [esp + 0x78], edx
mov dword [esp + 0x84], 0
mov dword [esp + 0x80], 1
mov dword [esp + 0x88], edx
mov dword [esp + 0x8c], 0
mov ecx, edx
xor edi, 1
or edi, ebx
jne 0x100845f0
xor ecx, edx
xor esi, eax
or esi, ecx
jne 0x100845f0
mov ecx, edx
or ecx, eax
je 0x100845c5
lea ecx, [esp + 0x480]
push eax
call fcn.1003f410
add esp, 4
jmp 0x100845f0
mov eax, dword [esp + 0x594]
push dword [esp + 0x58c]
push dword [esp + 0x58c]
lea ecx, [esp + 0x598]
push ecx
call dword [eax + 4]
add esp, 0xc
mov bl, 1
cmp byte [esp + 0x78], 0
jne 0x100838e3
jmp 0x10083906
movzx eax, byte [esp + 0x4c0]
cmp eax, 7
ja 0x10085002
mov ecx, 0xb2
bt ecx, eax
jae 0x10085002
nop word cs:[eax + eax]
nop
cmp dword [esp + 0x2f8], 1
jne 0x10084620
mov eax, dword [esp + 0x300]
push dword [esp + 0x2fc]
call dword [eax + 0x14]
add esp, 4
mov byte [esp + 0x10], al
jmp 0x1008462d
cmp dword [esp + 0x300], 0
sete byte [esp + 0x10]
push 0x88
lea eax, [esp + 0x484]
push eax
lea eax, [esp + 0x340]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
mov eax, dword [esp + 0x14]
mov esi, dword [esp + 0x24]
mov ebx, dword [eax + 0x1c]
mov edi, dword [eax + 0x24]
mov ecx, dword [ebx + 8]
test edi, edi
cmove esi, edi
call fcn.100f4af0
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10084c82
mov dword [esp + 8], 0
lea eax, [ebx + 8]
mov dword [esp + 4], eax
mov al, byte [ebx + 0xc]
test al, al
mov eax, dword [esp + 0x14]
jne 0x100873b0
mov eax, dword [eax + 0x20]
mov ecx, dword [eax + 8]
mov dword [esp], eax
call fcn.100f4af0
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10084c92
xor edx, edx
mov eax, dword [esp]
lea ecx, [eax + 8]
mov al, byte [eax + 0xc]
test al, al
jne 0x100873dd
mov eax, dword [ebx + 0x110]
cmp eax, 2
je 0x100846f3
cmp eax, 1
jne 0x10084712
movzx eax, byte [ebx + 0x114]
mov edi, ebx
test eax, eax
je 0x100847fc
cmp eax, 2
je 0x100847f1
mov al, byte [ebx + 0x115]
jmp 0x1008480f
cmp dword [ebx + 0xa0], 0
je 0x10084730
mov edi, ebx
mov byte [esp + 0xf], 6
xor ebx, ebx
test dl, dl
jne 0x10084837
jmp 0x1008482a
mov eax, dword [ebx + 0x114]
mov edi, ebx
mov bl, 1
jmp 0x10084822
call fcn.100faaa0
xor al, 1
mov dword [esp], eax
jmp 0x1008282f
mov eax, dword [ebx + 0xa4]
test edi, edi
lea edi, [esp + 0x508]
mov dword [esp + 0x20], ecx
mov dword [esp + 0x2c], eax
je 0x10084c28
mov edi, edx
mov edx, dword [esi + 4]
mov eax, dword [esi + 8]
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], eax
cmp dword [ebx + 0x158], edx
jbe 0x1008732c
mov ecx, dword [ebx + 0x150]
imul edx, edx, 0xf0
cmp dword [ecx + edx], 1
jne 0x1008732c
cmp dword [ecx + edx + 0x30], eax
jne 0x1008732c
cmp byte [ecx + edx + 0xe8], 0
mov ecx, dword [esp + 0x20]
mov edx, edi
lea edi, [esp + 0x508]
je 0x10084c28
test dl, dl
jne 0x100847b5
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10086165
mov esi, dword [ecx]
mov edx, dword [0x10551f24]
mov edi, dword [esp + 4]
test edx, edx
je 0x10085077
cmp edx, 0x100f3390
jne 0x100850a2
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
cmp byte [esp + 8], 0
jne 0x100850e2
jmp 0x100850d5
mov eax, dword [ebx + 0x118]
mov al, byte [eax + 8]
jmp 0x1008480f
mov esi, ecx
mov ecx, dword [ebx + 0x118]
mov ebx, edx
call fcn.100f4830
mov edx, ebx
mov ecx, esi
movzx eax, al
mov dword [esp + 0x54], 0
mov bl, 2
shl eax, 8
or eax, 1
mov dword [esp + 0x48], eax
test dl, dl
jne 0x10084837
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10085044
mov esi, dword [ecx]
mov edx, dword [0x10551f24]
test edx, edx
je 0x10084860
cmp edx, 0x100f3390
jne 0x10084887
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
cmp byte [esp + 8], 0
jne 0x100848c7
jmp 0x100848ba
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
je 0x1008484b
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x100848b0
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push esi
call edx
cmp byte [esp + 8], 0
jne 0x100848c7
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10085061
mov eax, dword [esp + 4]
mov esi, dword [eax]
mov edx, dword [0x10551f24]
test edx, edx
je 0x100848ed
cmp edx, 0x100f3390
jne 0x10084914
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
jmp 0x10084940
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
je 0x100848df
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x1008493d
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push esi
call edx
cmp byte [esp + 0x378], 0xa
jb 0x10084969
cmp dword [esp + 0x380], 0
je 0x10084969
mov esi, dword [esp + 0x37c]
call sub.KERNEL32.dll_GetProcessHeap
push esi
push 0
push eax
call sub.KERNEL32.dll_HeapFree
cmp byte [esp + 0x38c], 2
jb 0x100849a1
mov eax, dword [esp + 0x390]
mov ecx, dword [eax + 0xc]
lea edx, [eax + 8]
push dword [eax + 4]
push dword [eax]
push edx
call dword [ecx + 4]
add esp, 0xc
mov esi, dword [esp + 0x390]
call sub.KERNEL32.dll_GetProcessHeap
push esi
push 0
push eax
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x3a0]
push dword [esp + 0x398]
push dword [esp + 0x398]
lea ecx, [esp + 0x3a4]
push ecx
call dword [eax + 4]
add esp, 0xc
mov eax, dword [esp + 0x3b0]
push dword [esp + 0x3a8]
push dword [esp + 0x3a8]
lea ecx, [esp + 0x3b4]
push ecx
call dword [eax + 4]
add esp, 0xc
lea eax, [esp + 0x338]
push eax
call fcn.1004fdd0
add esp, 4
lea ecx, [esp + 0x3b8]
call fcn.100570c0
test bl, bl
je 0x10084a2c
mov al, 2
cmp bl, 1
lea ecx, [esp + 0x78]
je 0x10084a20
mov edx, dword [esp + 0x54]
mov ebx, dword [esp + 0x48]
mov dword [esp + 0x44], edx
jmp 0x10084a26
mov ebx, dword [esp + 0x48]
xor eax, eax
mov edx, dword [esp + 0x3c]
jmp 0x10084a3c
mov ebx, dword [esp + 0x38]
lea ecx, [esp + 0x78]
mov dl, byte [esp + 0xf]
mov al, 1
mov dh, dl
mov byte [esp + 0x508], al
mov eax, dword [esp + 0x174]
mov byte [esp + 0x509], dh
mov word [esp + 0x50a], ax
mov eax, dword [esp + 0x44]
mov dword [esp + 0x50c], ebx
mov dword [esp + 0x510], eax
mov eax, dword [0x10551ebc]
cmp eax, 4
jb 0x10084a7a
mov eax, dword [0x10551ec0]
mov dword [esp + 0x3c], edx
mov eax, dword [0x10411958]
add eax, 0xfffffffe
cmp eax, 4
jb 0x10084bb0
mov edx, dword [0x104116e0]
test edx, edx
je 0x10084bb0
mov al, 1
cmp edx, 1
je 0x10084aaf
cmp edx, 2
jne 0x10085029
mov al, 2
movzx edx, al
mov ecx, 0x104116e0
call fcn.10109ff0
lea ecx, [esp + 0x78]
test al, al
je 0x10084bb0
mov ecx, dword [0x104116e4]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x10087487
mov edx, dword [ecx + 0x2c]
mov esi, dword [ecx + 0x34]
mov edi, dword [ecx + 0x38]
mov dword [esp + 0x178], 0
mov dword [esp + 0x78], 0x10399d54
mov dword [esp + 0x7c], 1
mov dword [esp + 0x80], 0
mov dword [esp + 0x17c], edx
lea edx, [esp + 0x270]
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], esi
lea esi, [esp + 0x668]
lea eax, [ecx + 0x2c]
mov dword [esp + 0x188], edi
mov dword [esp + 0x338], edx
lea edx, [esp + 0x508]
mov dword [esp + 0x88], esi
lea esi, [esp + 0x78]
mov dword [esp + 0x33c], 1
mov dword [esp + 0x340], eax
mov dword [esp + 0x8c], 1
mov dword [esp + 0x668], edx
lea edx, [esp + 0x178]
mov dword [esp + 0x66c], 0x100186a0
mov dword [esp + 0x270], edx
lea edx, [esp + 0x338]
mov dword [esp + 0x274], esi
mov dword [esp + 0x278], 0x103986f0
call fcn.1010a850
mov ecx, esi
nop dword [eax + eax]
mov eax, dword [esp + 0x510]
movsd xmm0, qword [esp + 0x508]
mov dword [esp + 0x38], ebx
mov esi, ecx
mov dword [esp + 0x80], eax
movsd qword [esp + 0x78], xmm0
call fcn.100393d0
mov ecx, dword [esp + 0x408]
mov edx, dword [esp + 0x404]
mov dword [esp + 0x80], eax
mov dword [esp + 0x8c], 0
mov dword [esp + 0x88], 3
mov dword [esp + 0x7c], 0
mov dword [esp + 0x78], 1
push esi
call fcn.10064200
add esp, 4
lea ecx, [esp + 0x2f8]
jmp 0x100827f9
cmp byte [ebx + 0x180], 1
jne 0x10084cd6
test dl, dl
jne 0x10084c46
mov eax, dword [0x10551f14]
test eax, eax
jne 0x100862c3
mov esi, dword [ecx]
mov edx, dword [0x10551f24]
mov edi, dword [esp + 4]
test edx, edx
je 0x1008517a
cmp edx, 0x100f3390
jne 0x100851a5
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
cmp byte [esp + 8], 0
jne 0x100851e5
jmp 0x100851d8
call fcn.100faaa0
xor al, 1
mov dword [esp + 8], eax
jmp 0x1008467a
call fcn.100faaa0
mov edx, eax
xor dl, 1
jmp 0x100846ad
mov edi, edx
call fcn.100faaa0
mov edx, edi
test al, al
jne 0x10082acb
mov byte [esi + 0xc], 1
jmp 0x10082acb
mov ecx, 0x10410cc0
mov edi, edx
call fcn.10109f40
mov edx, edi
test al, al
jne 0x1008291e
jmp 0x10082a70
mov dword [esp + 0x30], edx
mov edx, dword [esp + 0x2c]
lea eax, [edx + 2]
mov ecx, eax
shr ecx, 0x1f
mov dword [ebx + 0xa0], ecx
mov dword [ebx + 0xa4], eax
lea ecx, [esp + 0x178]
push dword [ebx + 0x20]
push dword [ebx + 0xac]
call fcn.10026750
add esp, 8
cmp byte [esp + 0x378], 5
jne 0x10084d2a
mov dword [esp + 0x194], 0
mov dword [esp + 0x190], 1
mov dword [esp + 0x1c], ebx
push 0x88
lea esi, [esp + 0x33c]
push esi
lea eax, [esp + 0x278]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
push 0x88
push esi
lea esi, [esp + 0x80]
push esi
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea ecx, [esp + 0x100]
movsd xmm1, qword [ecx - 0x40]
movsd xmm2, qword [ecx - 0x1c]
mov eax, dword [ecx - 0x38]
movsd xmm0, qword [ecx - 0x48]
movsd xmm3, qword [ecx - 0x34]
movsd qword [esp + 0x460], xmm1
movsd xmm1, qword [ecx - 0x14]
movsd qword [esp + 0x3d8], xmm2
movsd xmm2, qword [esp + 0x2a8]
mov dword [esp + 0x468], eax
mov eax, dword [ecx - 0xc]
movsd qword [esp + 0x458], xmm0
movsd qword [esp + 0x3c0], xmm3
movsd qword [esp + 0x3e0], xmm1
movsd xmm1, qword [ecx - 0x24]
movsd qword [esp + 0x5c0], xmm2
movsd xmm2, qword [esp + 0x298]
mov dword [esp + 0x3e8], eax
mov al, byte [esp + 0xfc]
movsd qword [esp + 0x3d0], xmm1
movsd xmm1, qword [ecx - 0x2c]
movsd qword [esp + 0x5b0], xmm2
movsd xmm2, qword [esp + 0x288]
lea ecx, [esp + 0xf8]
mov byte [esp + 0x18], al
movsd qword [esp + 0x3c8], xmm1
movsd xmm1, qword [esp + 0x2a0]
movsd qword [esp + 0x5a0], xmm2
movsd xmm2, qword [esp + 0x270]
movsd qword [esp + 0x5b8], xmm1
movsd xmm1, qword [esp + 0x290]
movsd qword [esp + 0x588], xmm2
movsd qword [esp + 0x5a8], xmm1
movsd xmm1, qword [esp + 0x280]
movsd qword [esp + 0x598], xmm1
movsd xmm1, qword [esp + 0x278]
movsd qword [esp + 0x590], xmm1
call fcn.100570c0
movsd xmm1, qword [esp + 0x460]
mov eax, dword [esp + 0x468]
movsd xmm2, qword [esp + 0x3d8]
movsd xmm0, qword [esp + 0x458]
mov ecx, edi
mov edx, esi
movsd qword [esp + 0x68], xmm1
movsd xmm1, qword [esp + 0x3e0]
mov dword [esp + 0x70], eax
mov eax, dword [esp + 0x3e8]
movsd qword [esp + 0x90], xmm2
movsd xmm2, qword [esp + 0x3c0]
movsd qword [esp + 0x60], xmm0
movsd qword [esp + 0x98], xmm1
movsd xmm1, qword [esp + 0x3d0]
mov dword [esp + 0xa0], eax
movsd qword [esp + 0x78], xmm2
movsd qword [esp + 0x88], xmm1
movsd xmm1, qword [esp + 0x3c8]
movsd qword [esp + 0x80], xmm1
call fcn.10035f10
lea ecx, [esp + 0x520]
mov esi, dword [esp + 0x52c]
mov eax, dword [ecx + 8]
movsd xmm0, qword [ecx]
test esi, esi
mov dword [esp + 0x478], eax
movsd qword [esp + 0x470], xmm0
je 0x10085212
movsd xmm0, qword [esp + 0x470]
mov ecx, dword [esp + 0x478]
mov eax, dword [esp + 0x530]
mov dword [esp + 0x80], ecx
movsd qword [esp + 0x78], xmm0
mov dword [esp + 0x84], esi
mov dword [esp + 0x88], eax
mov ecx, 1
mov ebx, dword [esp + 0x7c]
mov edi, dword [esp + 0x78]
test ebx, ebx
mov eax, ebx
mov edx, edi
cmove eax, ecx
mov ecx, 0x1039e90c
cmove edx, ecx
lea ecx, [esp + 0x310]
push eax
call fcn.10007c50
add esp, 4
push ebx
push edi
lea eax, [esp + 0x88]
push eax
call dword [esi + 4]
add esp, 0xc
cmp dword [esp + 0x31c], 0
je 0x1008521d
movsd xmm0, qword [esp + 0x310]
movsd xmm1, qword [esp + 0x318]
lea ecx, [esp + 0x78]
movsd qword [esp + 0x160], xmm0
movsd qword [esp + 0x168], xmm1
cmp dword [esp + 0x164], 0
jne 0x100852a5
jmp 0x1008524d
lea ecx, [esp + 0x480]
xor edx, edx
push 0
jmp 0x1008457d
mov ecx, 0x104116d4
call fcn.10109f40
test al, al
jne 0x10082c44
jmp 0x10082d20
mov ecx, 0x104116e0
call fcn.10109f40
lea ecx, [esp + 0x78]
test al, al
jne 0x10084aaf
jmp 0x10084bb0
mov esi, ecx
call fcn.100faaa0
mov ecx, esi
test al, al
jne 0x10084837
mov eax, dword [esp]
mov byte [eax + 0xc], 1
jmp 0x10084837
call fcn.100faaa0
test al, al
jne 0x100848c7
mov byte [edi + 0xc], 1
jmp 0x100848c7
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
je 0x100847d5
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x100850cb
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push esi
call edx
cmp byte [esp + 8], 0
jne 0x100850e2
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10086182
mov esi, dword [edi]
mov edx, dword [0x10551f24]
test edx, edx
je 0x10085104
cmp edx, 0x100f3390
jne 0x1008512b
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
jmp 0x10085157
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
je 0x100850f6
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x10085154
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push esi
call edx
mov byte [esp + 0xf], 4
xor ebx, ebx
jmp 0x10084940
mov ecx, 0x104118cc
call fcn.10109f40
test al, al
jne 0x10083b56
jmp 0x10083c70
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
je 0x10084c66
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x100851ce
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push esi
call edx
cmp byte [esp + 8], 0
jne 0x100851e5
mov eax, dword [0x10551f14]
test eax, eax
jne 0x100862e0
mov esi, dword [edi]
mov edx, dword [0x10551f24]
test edx, edx
je 0x1008555b
cmp edx, 0x100f3390
jne 0x10085586
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
jmp 0x100855b2
mov dword [esp + 0x31c], 0
mov dword [esp + 0x160], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0x164], 0
mov dword [esp + 0x168], 0
mov dword [esp + 0x16c], 0x10397ea4
lea ecx, [esp + 0x78]
cmp byte [esp + 0x60], 0
je 0x100852a5
mov eax, dword [esp + 0x16c]
push 0
push dword [esp + 0x164]
lea ecx, [esp + 0x170]
push ecx
call dword [eax + 4]
lea ecx, [esp + 0x84]
add esp, 0xc
mov dword [esp + 0x160], 0x1039e90c
mov dword [esp + 0x164], 1
mov dword [esp + 0x168], 0
mov dword [esp + 0x16c], 0x10397ea4
movsd xmm0, qword [esp + 0x60]
mov eax, dword [esp + 0x70]
movsd xmm1, qword [esp + 0x68]
cmp byte [esp + 0x508], 3
movsd xmm2, qword [esp + 0x168]
movsd qword [esp + 0x78], xmm0
movsd xmm0, qword [esp + 0x160]
mov dword [esp + 0x88], eax
lea eax, [esp + 0xac]
movsd qword [esp + 0x80], xmm1
mov dword [esp + 0x98], 0
mov dword [esp + 0xa8], 0
movsd qword [eax + 8], xmm2
movsd qword [eax], xmm0
mov word [esp + 0xbc], 0
jne 0x1008540d
xor eax, eax
cmp dword [esp + 0x51c], 0
je 0x1008543b
lea ecx, [esp + 0x520]
mov dword [esp + 0x28], eax
movsd xmm0, qword [ecx - 0x10]
movsd xmm1, qword [ecx - 8]
lea ecx, [esp + 0x470]
movsd qword [esp + 0x3f8], xmm1
movsd qword [esp + 0x3f0], xmm0
mov esi, dword [esp + 0x3f0]
mov edi, dword [esp + 0x3f4]
mov edx, esi
push edi
call fcn.10007c50
add esp, 4
mov eax, dword [esp + 0xa8]
movsd xmm0, qword [esp + 0x470]
movsd xmm1, qword [esp + 0x478]
test eax, eax
movsd qword [esp + 0x318], xmm1
movsd qword [esp + 0x310], xmm0
je 0x100853cb
push dword [esp + 0xa0]
push dword [esp + 0xa0]
lea ecx, [esp + 0xac]
push ecx
call dword [eax + 4]
add esp, 0xc
mov esi, dword [esp + 0x3f0]
mov edi, dword [esp + 0x3f4]
movsd xmm0, qword [esp + 0x310]
movsd xmm1, qword [esp + 0x318]
lea eax, [esp + 0x100]
movsd qword [eax - 0x5c], xmm1
movsd qword [eax - 0x64], xmm0
mov eax, dword [esp + 0x3fc]
push edi
push esi
lea ecx, [esp + 0x400]
push ecx
call dword [eax + 4]
add esp, 0xc
mov eax, dword [esp + 0x28]
mov bl, 1
jmp 0x1008543d
movsd xmm0, qword [esp + 0x508]
lea edx, [esp + 0x310]
movsd qword [esp + 0x310], xmm0
call fcn.1002cc30
mov al, 1
cmp dword [esp + 0x51c], 0
jne 0x1008532b
xor ebx, ebx
lea edx, [esp + 0x78]
mov ecx, 0x12
lea edi, [esp + 0x410]
test al, al
mov esi, edx
rep movsd dword es:[edi], dword [esi]
jne 0x10085496
mov al, byte [esp + 0x508]
cmp al, 3
ja 0x10085464
cmp al, 2
jne 0x10085496
mov eax, dword [esp + 0x50c]
mov ecx, dword [eax + 0xc]
lea edx, [eax + 8]
push dword [eax + 4]
push dword [eax]
push edx
call dword [ecx + 4]
add esp, 0xc
mov esi, dword [esp + 0x50c]
call sub.KERNEL32.dll_GetProcessHeap
push esi
push 0
push eax
call sub.KERNEL32.dll_HeapFree
lea edx, [esp + 0x78]
mov eax, dword [esp + 0x51c]
test eax, eax
sete cl
or bl, cl
jne 0x100854c9
push dword [esp + 0x514]
push dword [esp + 0x514]
lea ecx, [esp + 0x520]
push ecx
call dword [eax + 4]
lea edx, [esp + 0x84]
add esp, 0xc
mov eax, dword [esp + 0x430]
or eax, dword [esp + 0x440]
jne 0x100855de
cmp byte [esp + 0x18], 3
lea edx, [esp + 0x60]
jne 0x100855be
mov al, byte [esp + 0x410]
cmp al, 0xb
je 0x1008551a
cmp al, 0xa
jb 0x1008551a
cmp dword [esp + 0x418], 0
je 0x1008551a
mov esi, dword [esp + 0x414]
call sub.KERNEL32.dll_GetProcessHeap
push esi
push 0
push eax
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 0x450]
test eax, eax
je 0x10085541
push dword [esp + 0x448]
push dword [esp + 0x448]
lea ecx, [esp + 0x454]
push ecx
call dword [eax + 4]
add esp, 0xc
lea ecx, [esp + 0x588]
call section..text
mov al, 1
lea ebx, [esp + 0x508]
jmp 0x1008569d
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
je 0x10085201
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x100855af
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push esi
call edx
mov byte [esp + 0xf], 1
xor ebx, ebx
jmp 0x10084940
lea ecx, [esp + 0x410]
mov dword [esp + 0x64], 0
mov dword [esp + 0x60], 1
call fcn.1002cc30
lea edx, [esp + 0x78]
mov eax, dword [esp + 0x588]
mov ecx, 0x12
lea edi, [esp + 0xb0]
lea esi, [esp + 0x410]
lea ebx, [esp + 0x508]
mov dword [esp + 0x30c], eax
mov eax, dword [esp + 0x58c]
mov dword [esp + 0x170], eax
lea eax, [esp + 0x590]
movsd xmm1, qword [eax + 8]
movsd xmm2, qword [eax + 0x18]
movsd xmm0, qword [eax]
movsd qword [esp + 0x80], xmm1
movsd xmm1, qword [eax + 0x10]
movsd qword [esp + 0x90], xmm2
movsd xmm2, qword [eax + 0x28]
movsd qword [esp + 0x78], xmm0
movsd qword [esp + 0x88], xmm1
movsd xmm1, qword [eax + 0x20]
movsd qword [esp + 0xa0], xmm2
movsd qword [esp + 0x98], xmm1
movsd xmm1, qword [eax + 0x30]
movsd qword [esp + 0xa8], xmm1
rep movsd dword es:[edi], dword [esi]
mov ecx, 0x20
mov edi, ebx
mov esi, edx
rep movsd dword es:[edi], dword [esi]
mov al, byte [esp + 0x10]
mov ecx, dword [esp + 0x2c]
or al, 4
mov dword [esp + 0x400], ecx
mov byte [esp + 0x4e], al
xor eax, eax
lea edi, [esp + 0x668]
mov ecx, 0x20
mov esi, ebx
test al, al
rep movsd dword es:[edi], dword [esi]
mov edx, dword [esp + 0x7b]
mov edi, dword [esp + 0x270]
movzx esi, word [esp + 0x410]
mov ecx, dword [esp + 0x78]
mov dword [esp + 0x333], edx
mov dh, byte [esp + 0x274]
mov dl, byte [esp + 0x412]
mov dword [esp + 0x330], ecx
mov dword [esp + 0x268], edi
mov word [esp + 0x5c], si
mov byte [esp + 0x26c], dh
mov byte [esp + 0x5e], dl
je 0x10085753
mov eax, dword [esp + 0x1d4]
test eax, eax
je 0x10085713
push dword [esp + 0x1d0]
call dword [eax + 0xc]
add esp, 4
mov eax, dword [esp + 0x23c]
mov esi, dword [esp + 0x30c]
mov ebx, dword [esp + 0x38]
mov edi, dword [esp + 4]
mov byte [esp + 0xf], 8
test eax, eax
je 0x1008573f
push dword [esp + 0x238]
call dword [eax + 0xc]
add esp, 4
mov eax, dword [esp + 0x170]
mov dword [esp + 0x48], esi
mov dword [esp + 0x54], eax
jmp 0x100859ff
mov eax, dword [esp]
mov ecx, dword [esp + 0x1c]
lea edi, [esp + 0x6e8]
lea esi, [esp + 0x668]
add eax, 0x10
mov edx, ecx
mov dword [esp + 0x2c], eax
lea eax, [ecx + 0xa0]
mov dword [esp + 0x28], eax
lea eax, [ecx + 0x168]
mov ecx, 0x20
mov dword [esp + 0x18], eax
rep movsd dword es:[edi], dword [esi]
lea esi, [edx + 0x120]
mov ecx, dword [esp + 0x333]
mov eax, dword [esp + 0x330]
mov edi, dword [esp + 0x1a0]
mov dword [esp + 0x32b], ecx
mov dword [esp + 0x328], eax
mov eax, dword [esp + 0x268]
mov dword [esp + 0x260], eax
mov al, byte [esp + 0x26c]
mov byte [esp + 0x264], al
movzx eax, word [esp + 0x5c]
mov word [esp + 0x58], ax
mov al, byte [esp + 0x5e]
mov byte [esp + 0x5a], al
push 0xe8
lea eax, [esp + 0x17c]
push eax
lea eax, [esp + 0x80]
push eax
call sub.VCRUNTIME140.dll_memcpy
add esp, 0xc
lea ebx, [esp + 0x78]
lea ecx, [esp + 0x270]
mov edx, esi
push ebx
push edi
call fcn.100241d0
add esp, 8
mov eax, dword [esp + 0x170]
mov ecx, 0x20
lea edi, [esp + 0x80]
lea esi, [esp + 0x6e8]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x30c]
mov dword [esp + 0x78], eax
rep movsd dword es:[edi], dword [esi]
lea ecx, [esp + 0x100]
mov byte [esp + 0x100], 0
mov edi, ebx
lea ebx, [esp + 0x270]
mov eax, dword [esp + 0x32b]
mov esi, dword [esp + 0x1c]
mov edx, edi
mov dword [ecx + 4], eax
mov eax, dword [esp + 0x328]
mov dword [ecx + 1], eax
mov eax, dword [esp + 0x400]
mov dword [esp + 0x108], eax
mov al, byte [esp + 0x264]
mov byte [ecx + 0x10], al
mov eax, dword [esp + 0x260]
mov dword [ecx + 0xc], eax
mov al, byte [esp + 0x4e]
mov byte [esp + 0x111], 2
mov byte [esp + 0x114], al
mov al, byte [esp + 0x5a]
mov byte [ecx + 0x17], al
movzx eax, word [esp + 0x58]
mov word [ecx + 0x15], ax
mov ecx, dword [esp + 0x28]
lea eax, [esi + 0x108]
push eax
push dword [esp + 0x1c]
push ebx
push dword [esp + 0x38]
call fcn.10087cf0
add esp, 0x10
cmp al, 0xd
mov byte [esp + 0xf], al
jne 0x100859cc
inc dword [esi + 0x184]
mov edx, dword [esp + 0x14]
mov ecx, dword [edx + 0x1c]
mov dword [esp + 0x3c], ecx
mov eax, ecx
lock inc dword [ecx]
jle 0x1008750f
mov ebx, dword [esp + 0x270]
mov ecx, dword [esp + 0x274]
mov eax, dword [esp + 0x278]
mov dword [esp + 0x78], ebx
mov dword [esp + 0x7c], ecx
mov dword [esp + 0x44], ecx
cmp dword [eax + 0x38], ebx
jbe 0x1008742c
mov eax, dword [eax + 0x30]
imul esi, ebx, 0xf0
cmp dword [eax + esi], 1
jne 0x1008742c
mov ecx, dword [esp + 0x44]
cmp dword [eax + esi + 0x30], ecx
jne 0x1008742c
mov ecx, dword [eax + esi + 0x40]
cmp ecx, 0xffffffff
je 0x1008749b
lea eax, [eax + esi + 0x40]
inc ecx
mov dword [eax], ecx
mov edi, dword [edx + 0x20]
lock inc dword [edi]
jle 0x1008750f
cmp byte [esp + 0x30], 0
mov ecx, dword [esp + 0x20]
mov dword [esp + 0x38], ebx
jne 0x10085984
mov eax, dword [0x10551f14]
test eax, eax
jne 0x1008640c
mov ebx, dword [ecx]
mov edx, dword [0x10551f24]
test edx, edx
jne 0x100859af
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
jne 0x10085b2b
mov eax, dword [ebx]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
jmp 0x10085b57
mov ecx, ebx
call fcn.10019ab0
mov eax, dword [esp + 0x278]
movsd xmm0, qword [esp + 0x270]
mov ecx, edi
mov dword [esp + 0x80], eax
movsd qword [esp + 0x78], xmm0
call fcn.1001a010
mov ebx, dword [esp + 0x38]
mov edi, dword [esp + 4]
mov ecx, dword [esp + 0x20]
cmp byte [esp + 0x30], 0
jne 0x10085a17
mov eax, dword [0x10551f14]
test eax, eax
jne 0x100862f6
mov esi, dword [ecx]
mov edx, dword [0x10551f24]
test edx, edx
jne 0x10085a42
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
jne 0x10085a5f
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
cmp byte [esp + 8], 0
jne 0x10085a9f
jmp 0x10085a92
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x10085a88
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push esi
call edx
cmp byte [esp + 8], 0
jne 0x10085a9f
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10086313
mov esi, dword [edi]
mov edx, dword [0x10551f24]
test edx, edx
jne 0x10085aca
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
jne 0x10085ae3
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
jmp 0x10084a30
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x10085b0c
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push esi
call edx
jmp 0x10084a30
mov ecx, 0x104118c0
call fcn.10109f40
test al, al
jne 0x10083718
jmp 0x10083802
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x10085b54
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push ebx
call edx
cmp byte [esp + 8], 0
mov ecx, dword [esp + 0x3c]
mov ebx, dword [esp + 0x1c]
jne 0x10085b73
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10086429
mov eax, ecx
mov ecx, dword [esp + 4]
shr eax, 0x10
mov dword [esp + 0x174], eax
mov ebx, dword [ecx]
mov edx, dword [0x10551f24]
test edx, edx
jne 0x10085bae
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
cmp edx, 0x100f3390
jne 0x10085bc4
mov eax, dword [ebx]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
jmp 0x10085bf0
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x10085bed
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push ebx
call edx
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x44]
mov ecx, dword [esp + 0x38]
mov byte [esp + 0x178], al
mov byte [esp + 0x179], ah
mov eax, dword [esp + 0x174]
mov word [esp + 0x17a], ax
mov dword [esp + 0x180], edx
mov dword [esp + 0x17c], ecx
mov dword [esp + 0x184], edi
mov edi, dword [esp + 0x178]
mov ecx, dword [edi + 8]
call fcn.100f4af0
mov eax, dword [0x10551f14]
test eax, eax
jne 0x1008632d
xor eax, eax
mov cl, byte [edi + 0xc]
lea ebx, [edi + 8]
test cl, cl
jne 0x100874b4
mov edx, dword [esp + 0x38]
mov ecx, dword [esp + 0x44]
mov dword [esp + 0x270], edx
mov dword [esp + 0x274], ecx
cmp dword [edi + 0x158], edx
jbe 0x100874e2
mov ecx, dword [edi + 0x150]
cmp dword [ecx + esi], 1
jne 0x100874e2
mov edx, dword [esp + 0x44]
cmp dword [ecx + esi + 0x30], edx
jne 0x100874e2
mov cl, byte [ecx + esi + 0xe8]
test al, al
mov byte [esp], cl
jne 0x10085cb5
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10086443
mov esi, dword [ebx]
mov edx, dword [0x10551f24]
test edx, edx
jne 0x10085ce0
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f3390
cmove edx, ecx
mov dword [0x10551f24], edx
mov ebx, dword [esp + 0x38]
cmp edx, 0x100f3390
jne 0x10085cfa
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
jmp 0x10085d26
mov edx, dword [0x10551f3c]
test edx, edx
jne 0x10085d23
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov ecx, 0x100f51d0
cmove edx, ecx
mov dword [0x10551f3c], edx
push esi
call edx
cmp byte [esp], 0
lea edx, [esp + 0x178]
je 0x10085d87
lea ecx, [esp + 0x270]
call fcn.100268e0
mov ecx, dword [esp + 0x24]
cmp dword [ecx], 0
je 0x10085d69
mov ecx, dword [esp + 0x24]
call fcn.10026a90
mov ecx, dword [esp + 0x24]
mov eax, dword [ecx]
lock dec dword [eax]
jne 0x10085d69
mov ecx, dword [esp + 0x24]
call fcn.10064ec0
mov ecx, dword [esp + 0x24]
mov eax, dword [esp + 0x278]
lea edx, [esp + 0x178]
mov dword [ecx + 8], eax
movsd xmm0, qword [esp + 0x270]
movsd qword [ecx], xmm0
lea ecx, [esp + 0x78]
call fcn.100268e0
movsd xmm0, qword [esp + 0x178]
movsd xmm1, qword [esp + 0x180]
lea eax, [esp + 0x100]
mov byte [esp + 0x84], 0
movsd qword [eax - 0x70], xmm1
movsd qword [eax - 0x78], xmm0
mov cl, byte [esp + 0x78]
movsd xmm0, qword [eax - 0x78]
movsd xmm1, qword [eax - 0x70]
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x84]
mov edx, dword [esp + 0x7c]
mov byte [esp + 0x30], cl
mov cl, byte [esp + 0x79]
movsd qword [esp + 0x818], xmm1
movsd qword [esp + 0x810], xmm0
movsd qword [esp + 0x180], xmm1
movsd qword [esp + 0x178], xmm0
mov dword [esp + 0x1c], edi
mov esi, dword [eax]
mov byte [esp + 0x2c], cl
movzx ecx, word [esp + 0x7a]
test esi, esi
mov word [esp + 0x20], cx
mov ecx, dword [esp + 0x80]
je 0x10085e2d
lock inc dword [esi]
jg 0x10085e2f
jmp 0x1008750f
xor esi, esi
cmp byte [esp + 0x10], 0
mov dword [esp + 4], ecx
mov cl, 1
mov dword [esp + 8], edx
mov dword [esp], esi
jne 0x100864b6
movsd xmm0, qword [esp + 0x178]
movsd xmm1, qword [esp + 0x180]
mov eax, dword [esp + 0x308]
movsd xmm2, qword [esp + 0x300]
lea ecx, [esp + 0x100]
movsd qword [esp + 0x78], xmm0
movsd xmm0, qword [esp + 0x2f8]
movsd qword [esp + 0x80], xmm1
mov dword [ecx - 0x68], eax
movsd qword [ecx - 0x70], xmm2
movsd qword [ecx - 0x78], xmm0
call sub.KERNEL32.dll_GetProcessHeap
push 0x28
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x100874f0
mov ecx, dword [esp + 0x98]
mov edx, dword [ebp + 8]
mov dword [eax + 0x20], ecx
movsd xmm0, qword [esp + 0x90]
movsd qword [eax + 0x18], xmm0
movsd xmm0, qword [esp + 0x88]
movsd qword [eax + 0x10], xmm0
movsd xmm0, qword [esp + 0x78]
movsd xmm1, qword [esp + 0x80]
movsd qword [eax + 8], xmm1
movsd qword [eax], xmm0
mov byte [eax + 0x24], 0
mov cl, byte [esp + 0x272]
mov byte [eax + 0x27], cl
movzx ecx, word [esp + 0x270]
mov word [eax + 0x25], cx
lea ecx, [esp + 0x338]
mov dword [esp + 0x338], eax
call fcn.100885a0
test al, al
je 0x10086109
mov ecx, dword [esp + 0x14]
mov dl, 2
cmp byte [ecx + 0xc], 2
je 0x10086021
mov eax, dword [ecx + 4]
mov eax, dword [eax + 0x20]
mov ecx, dword [ecx + 4]
mov edx, bind
sub edx, dword [ecx + 8]
cmp eax, edx
je 0x100874f7
lea edx, [eax + 1]
lock cmpxchg dword [ecx + 0x20], edx
mov ecx, dword [esp + 0x14]
jne 0x10085f38
mov eax, dword [ecx + 4]
mov dword [esp + 0x18], eax
lock inc dword [eax]
jle 0x1008750f
call sub.KERNEL32.dll_GetProcessHeap
push 4
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10087508
mov dword [eax], 0
mov edi, eax
mov al, byte [esp + 0x7a]
mov byte [esp + 0x272], al
movzx eax, word [esp + 0x78]
mov word [esp + 0x270], ax
call sub.KERNEL32.dll_GetProcessHeap
push 0x1c
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10087521
mov dword [eax], 1
mov dword [eax + 4], 1
mov dword [eax + 8], edi
mov byte [eax + 0xc], 0
mov dword [esp + 0x28], eax
mov esi, dword [esp]
xor edx, edx
mov cl, byte [esp + 0x7a]
mov byte [eax + 0xf], cl
movzx ecx, word [esp + 0x78]
mov word [eax + 0xd], cx
mov dword [eax + 0x14], 0
mov byte [eax + 0x18], 0
mov cl, byte [esp + 0x272]
mov byte [eax + 0x1b], cl
movzx ecx, word [esp + 0x270]
mov word [eax + 0x19], cx
mov cl, byte [esp + 0x7a]
movzx eax, word [esp + 0x78]
mov byte [esp + 0x272], cl
mov ecx, dword [esp + 0x14]
mov word [esp + 0x270], ax
mov al, byte [esp + 0x272]
movzx edi, word [esp + 0x270]
test esi, esi
mov byte [esp + 0x412], al
mov word [esp + 0x410], di
je 0x1008604c
lock inc dword [esi]
jle 0x1008750f
mov dword [esp + 0x10], edx
mov al, byte [esp + 0x412]
movzx edx, word [esp + 0x410]
mov esi, dword [esp + 0x338]
mov byte [esp + 0x6ea], al
mov word [esp + 0x6e8], dx
mov edi, dword [ecx + 0x14]
test edi, edi
je 0x10086198
mov ebx, dword [ecx + 0x18]
mov al, byte [esp + 0x6ea]
mov dword [esp + 0x34], esi
mov esi, dword [ebx + 8]
mov byte [esp + 0x7a], al
movzx eax, word [esp + 0x6e8]
mov word [esp + 0x78], ax
call sub.KERNEL32.dll_GetProcessHeap
push 0x14
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10087513
lea ecx, [esi + 7]
neg esi
mov edx, dword [esp]
and esi, ecx
mov ecx, dword [esp + 0x34]
add edi, esi
mov dword [eax], ecx
mov ecx, dword [esp + 0x18]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 0x28]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x10]
mov byte [eax + 0xc], cl
movzx ecx, word [esp + 0x78]
mov word [eax + 0xd], cx
mov cl, byte [esp + 0x7a]
mov byte [eax + 0xf], cl
mov dword [eax + 0x10], edx
push 0x10399db4
push eax
push edi
call dword [ebx + 0xc]
add esp, 0xc
mov ebx, dword [esp + 0x38]
jmp 0x100864b0
mov esi, dword [esp + 0x338]
mov eax, dword [esp + 0x14]
test esi, esi
je 0x100864b4
mov ecx, esi
call fcn.10026a90
mov eax, dword [esi]
lock dec dword [eax]
jne 0x10086131
mov ecx, esi
call fcn.10064ec0
mov eax, dword [esi + 0xc]
lock dec dword [eax]
jne 0x10086141
lea ecx, [esi + 0xc]
call fcn.100814c0
add esi, 0x10
mov ecx, esi
call fcn.100547a0
mov esi, dword [esp + 0x338]
call sub.KERNEL32.dll_GetProcessHeap
push esi
push 0
push eax
call sub.KERNEL32.dll_HeapFree
jmp 0x100864b0
call fcn.100faaa0
mov ecx, dword [esp + 0x20]
test al, al
jne 0x100847b5
mov eax, dword [esp]
mov byte [eax + 0xc], 1
jmp 0x100847b5
call fcn.100faaa0
test al, al
jne 0x100850e2
mov byte [ebx + 0xc], 1
jmp 0x100850e2
mov al, byte [esp + 0x6ea]
mov byte [esp + 0x66a], al
movzx eax, word [esp + 0x6e8]
mov word [esp + 0x668], ax
call fcn.101079c0
cmp eax, 3
je 0x10087528
mov cl, byte [esp + 0x66a]
movzx edi, word [esp + 0x668]
cmp eax, 1
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edx
mov byte [esp + 0x50a], cl
mov word [esp + 0x508], di
je 0x10086339
cmp eax, 2
mov dword [esp + 0x34], edx
jne 0x1008753c
mov al, byte [esp + 0x50a]
mov byte [esp + 0x272], al
movzx eax, word [esp + 0x508]
mov word [esp + 0x270], ax
call sub.KERNEL32.dll_GetProcessHeap
push 0x3c
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x1008751a
mov dword [eax], 0x8c
mov edi, eax
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x14], 0x10399dc4
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x20], esi
mov eax, dword [esp + 0x18]
mov esi, dword [esp + 0x34]
mov ecx, dword [esp]
mov edx, edi
mov dword [edi + 0x24], eax
mov eax, dword [esp + 0x28]
mov dword [edi + 0x28], eax
mov eax, dword [esp + 0x10]
mov byte [edi + 0x2c], al
movzx eax, word [esp + 0x270]
mov word [edi + 0x2d], ax
mov al, byte [esp + 0x272]
mov byte [edi + 0x2f], al
mov dword [edi + 0x30], ecx
mov ecx, esi
mov dword [edi + 0x38], 0
add ecx, 8
push 0
call fcn.10108610
add esp, 4
jmp 0x10086488
mov esi, ecx
call fcn.100faaa0
mov ecx, esi
test al, al
jne 0x10084c46
mov eax, dword [esp]
mov byte [eax + 0xc], 1
jmp 0x10084c46
call fcn.100faaa0
test al, al
jne 0x100851e5
mov byte [ebx + 0xc], 1
jmp 0x100851e5
call fcn.100faaa0
mov ecx, dword [esp + 0x20]
test al, al
jne 0x10085a17
mov eax, dword [esp]
mov byte [eax + 0xc], 1
jmp 0x10085a17
call fcn.100faaa0
test al, al
jne 0x10085a9f
mov eax, dword [esp + 0x1c]
mov byte [eax + 0xc], 1
jmp 0x10085a9f
call fcn.100faaa0
xor al, 1
jmp 0x10085c4c
mov al, byte [esp + 0x50a]
mov byte [esp + 0x272], al
movzx eax, word [esp + 0x508]
mov word [esp + 0x270], ax
call sub.KERNEL32.dll_GetProcessHeap
push 0x3c
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x1008751a
mov dword [eax], 0x8c
mov edi, eax
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x14], 0x10399dd8
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov dword [eax + 0x20], esi
mov eax, dword [esp + 0x18]
mov dword [edi + 0x24], eax
mov eax, dword [esp + 0x28]
mov dword [edi + 0x28], eax
mov eax, dword [esp + 0x10]
mov byte [edi + 0x2c], al
movzx eax, word [esp + 0x270]
mov word [edi + 0x2d], ax
mov al, byte [esp + 0x272]
mov byte [edi + 0x2f], al
mov eax, dword [esp]
mov dword [edi + 0x30], eax
lea eax, [esp + 0x7c]
mov dword [edi + 0x38], 0
mov dword [esp + 0x270], eax
call fcn.100ff440
test eax, eax
je 0x10087566
mov eax, dword [eax]
lea ecx, [esp + 0x270]
mov edx, edi
test eax, eax
je 0x10086459
push eax
jmp 0x1008645b
call fcn.100faaa0
mov ecx, dword [esp + 0x20]
test al, al
jne 0x10085984
mov eax, dword [esp]
mov byte [eax + 0xc], 1
jmp 0x10085984
call fcn.100faaa0
mov ecx, dword [esp + 0x3c]
test al, al
jne 0x10085b73
mov byte [ebx + 0xc], 1
jmp 0x10085b73
call fcn.100faaa0
test al, al
jne 0x10085cb5
mov byte [edi + 0xc], 1
jmp 0x10085cb5
push 0
call fcn.10107f50
add esp, 4
mov eax, dword [esp + 0x78]
test eax, eax
je 0x10086496
cmp eax, 1
jne 0x10086484
mov eax, dword [esp + 0x7c]
lock dec dword [eax]
jne 0x10086496
lea ecx, [esp + 0x7c]
call fcn.10069f30
jmp 0x10086496
mov esi, dword [esp + 0x7c]
lock dec dword [esi]
jne 0x10086496
lea ecx, [esp + 0x7c]
call fcn.1006a000
mov eax, 0x8c
mov ecx, 0x44
lock cmpxchg dword [edi], ecx
je 0x100864b0
mov eax, dword [edi + 0x14]
push edi
call dword [eax + 0xc]
add esp, 4
mov eax, dword [esp + 0x14]
xor ecx, ecx
mov esi, dword [esp + 0x320]
mov edx, dword [esp + 0x324]
mov dword [esp + 0x10], ecx
mov dword [esp + 0x28], esi
mov esi, dword [eax + 0x14]
mov dword [esp + 0x18], edx
test esi, esi
je 0x10086556
mov edi, dword [eax + 0x18]
mov ebx, dword [edi + 8]
call sub.KERNEL32.dll_GetProcessHeap
push 0x1c
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10087521
lea ecx, [ebx + 7]
neg ebx
mov edx, dword [esp + 0x18]
and ebx, ecx
mov cl, byte [esp + 0x30]
add esi, ebx
mov byte [eax], cl
mov cl, byte [esp + 0x2c]
mov byte [eax + 1], cl
movzx ecx, word [esp + 0x20]
mov word [eax + 2], cx
mov ecx, dword [esp + 8]
mov dword [eax + 4], ecx
mov ecx, dword [esp + 4]
mov dword [eax + 8], ecx
mov ecx, dword [esp + 0x1c]
mov dword [eax + 0xc], ecx
mov ecx, dword [esp]
mov dword [eax + 0x10], ecx
mov ecx, dword [esp + 0x28]
mov dword [eax + 0x14], ecx
mov dword [eax + 0x18], edx
push 0x10399dec
push eax
push esi
call dword [edi + 0xc]
add esp, 0xc
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 0x38]
jmp 0x10086755
call fcn.101079c0
cmp eax, 3
je 0x10087528
mov edi, edx
cmp eax, 1
mov dword [esp + 0x78], eax
mov dword [esp + 0x7c], edx
je 0x10086631
cmp eax, 2
jne 0x1008753c
call sub.KERNEL32.dll_GetProcessHeap
push 0x44
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10087555
mov dword [eax], 0x8c
mov esi, eax
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x14], 0x10399dfc
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov al, byte [esp + 0x30]
mov edx, dword [esp + 8]
mov ecx, dword [esp + 4]
mov byte [esi + 0x20], al
mov al, byte [esp + 0x2c]
mov byte [esi + 0x21], al
movzx eax, word [esp + 0x20]
mov word [esi + 0x22], ax
mov dword [esi + 0x24], edx
mov dword [esi + 0x28], ecx
mov edx, dword [esp + 0x1c]
mov ecx, dword [esp]
mov dword [esi + 0x2c], edx
mov dword [esi + 0x30], ecx
mov edx, dword [esp + 0x28]
mov ecx, dword [esp + 0x18]
mov dword [esi + 0x34], edx
mov dword [esi + 0x38], ecx
mov ecx, edi
mov dword [esi + 0x40], 0
mov edx, esi
add ecx, 8
push 0
call fcn.10108610
add esp, 4
mov ecx, dword [esp + 0x24]
jmp 0x10086725
call sub.KERNEL32.dll_GetProcessHeap
push 0x44
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x10087555
mov dword [eax], 0x8c
mov esi, eax
mov dword [eax + 8], 0
mov dword [eax + 4], 0
mov dword [eax + 0x10], 0
mov dword [eax + 0xc], 0
mov dword [eax + 0x14], 0x10399e10
mov dword [eax + 0x18], 0
mov dword [eax + 0x1c], 0
mov al, byte [esp + 0x30]
mov byte [esi + 0x20], al
mov al, byte [esp + 0x2c]
mov byte [esi + 0x21], al
movzx eax, word [esp + 0x20]
mov word [esi + 0x22], ax
mov eax, dword [esp + 8]
mov dword [esi + 0x24], eax
mov eax, dword [esp + 4]
mov dword [esi + 0x28], eax
mov eax, dword [esp + 0x1c]
mov dword [esi + 0x2c], eax
mov eax, dword [esp]
mov dword [esi + 0x30], eax
mov eax, dword [esp + 0x28]
mov dword [esi + 0x34], eax
mov eax, dword [esp + 0x18]
mov dword [esi + 0x38], eax
lea eax, [esp + 0x7c]
mov dword [esi + 0x40], 0
mov dword [esp + 0x270], eax
call fcn.100ff440
test eax, eax
je 0x10087566
mov eax, dword [eax]
lea ecx, [esp + 0x270]
mov edx, esi
test eax, eax
je 0x100866f2
push eax
jmp 0x100866f4
push 0
call fcn.10107f50
add esp, 4
mov eax, dword [esp + 0x78]
mov ecx, dword [esp + 0x24]
test eax, eax
je 0x10086737
cmp eax, 1
jne 0x10086721
mov eax, dword [esp + 0x7c]
lock dec dword [eax]
jne 0x10086737
lea ecx, [esp + 0x7c]
call fcn.10069f30
jmp 0x10086733
mov edi, dword [esp + 0x7c]
lock dec dword [edi]
jne 0x10086737
lea ecx, [esp + 0x7c]
call fcn.1006a000
mov ecx, dword [esp + 0x24]
mov eax, 0x8c
mov edx, 0x44
lock cmpxchg dword [esi], edx
je 0x10086755
mov eax, dword [esi + 0x14]
push esi
call dword [eax + 0xc]
mov ecx, dword [esp + 0x28]
add esp, 4
cmp byte [esp + 0x10], 0
je 0x100867ba
lea ecx, [esp + 0x178]
call fcn.10026a90
mov eax, dword [esp + 0x178]
lock dec dword [eax]
jne 0x10086780
lea ecx, [esp + 0x178]
call fcn.10064ec0
mov eax, dword [esp + 0x184]
lock dec dword [eax]
jne 0x10086798
lea ecx, [esp + 0x184]
call fcn.100814c0
mov eax, dword [esp + 0x3c]
mov dword [esp + 0x48], ebx
lea ecx, [esp + 0x2f8]
mov al, ah
mov byte [esp + 0xf], ah
mov eax, dword [esp + 0x44]
mov dword [esp + 0x54], eax
jmp 0x100827f9
mov eax, dword [esp + 0x3c]
mov edx, dword [esp + 0x14]
mov dword [esp + 0x48], ebx
mov al, ah
mov byte [esp + 0xf], ah
mov eax, dword [esp + 0x44]
mov dword [esp + 0x54], eax
jmp 0x10082806
mov ecx, edx
mov edx, esi
call fcn.10089920
test eax, eax
jne 0x10086bc8
mov esi, edx
test edx, edx
je 0x10086a64
mov edx, dword [esp + 0x14]
add edx, 0xf0
mov dword [esp + 0x7c], esi
mov dword [esp + 0x78], 1
mov ecx, edx
lea edx, [esp + 0x78]
call fcn.1008c350
xor ecx, ecx
test eax, eax
setne cl
mov edx, dword [esp + 0x40]
mov dword [edx], ecx
mov dword [edx + 4], eax
mov dword [edx + 8], edi
jmp 0x10086ff9
cmp eax, 1
jne 0x100868ec
movzx eax, byte [esi + 0x114]
test eax, eax
je 0x10086b16
cmp eax, 2
je 0x10086b0b
mov al, byte [esi + 0x115]
jmp 0x10086b25
mov al, 1
xor ebx, ebx
mov dword [esp + 4], 0
jmp 0x100868d9
mov dword [esp + 8], edx
mov edx, eax
lea eax, [ebx + edi]
mov dword [esp + 0x78], edx
mov dword [esp + 0x7c], ecx
cmp dword [eax], 1
jne 0x1008742c
lea eax, [ebx + edi + 0x30]
cmp dword [eax], ecx
jne 0x1008742c
mov eax, dword [ebp + 8]
mov eax, dword [eax]
mov ecx, dword [eax + 4]
push dword [eax]
call dword [ecx]
add esp, 4
lea ecx, [ebx + edi + 0x60]
mov dword [esp + 4], ecx
mov ecx, dword [ebx + edi + 0x64]
test ecx, ecx
je 0x100868c0
mov edi, dword [esp + 4]
push dword [edi]
mov edi, eax
mov ebx, edx
call dword [ecx + 0xc]
mov edx, ebx
mov eax, edi
add esp, 4
mov ecx, dword [esp + 4]
mov bl, 1
mov dword [esp + 4], 0
mov dword [ecx], eax
mov dword [ecx + 4], edx
mov edx, dword [esp + 8]
mov al, 4
mov dword [esp + 0x10], eax
cmp byte [esp], 0
jne 0x10086b51
jmp 0x10086b44
mov edi, dword [esi + 0x114]
mov al, 1
xor ebx, ebx
mov dword [esp + 0x10], 0
mov dword [esp + 4], eax
cmp byte [esp], 0
jne 0x10086b51
jmp 0x10086b44
mov eax, dword [0x10551ebc]
cmp eax, 5
jb 0x10086920
mov eax, dword [0x10551ec0]
mov eax, dword [0x10411958]
dec eax
cmp eax, 5
jb 0x10086fe8
mov ecx, dword [0x10411704]
test ecx, ecx
je 0x10086fe8
mov al, 1
cmp ecx, 1
je 0x1008694f
cmp ecx, 2
jne 0x10087230
mov al, 2
movzx edx, al
mov ecx, 0x10411704
call fcn.10109ff0
test al, al
je 0x10086fe8
mov ecx, dword [0x10411708]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x10087593
mov edx, dword [ecx + 0x2c]
mov esi, dword [ecx + 0x34]
mov edi, dword [ecx + 0x38]
mov dword [esp + 0x178], 0
mov dword [esp + 0x78], 0x10399e24
mov dword [esp + 0x7c], 1
mov dword [esp + 0x80], 0
mov dword [esp + 0x88], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0x8c], 0
mov dword [esp + 0x17c], edx
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], esi
lea esi, [esp + 0x178]
lea edx, [esp + 0x78]
mov dword [esp + 0x188], edi
mov dword [esp + 0x5c8], esi
mov dword [esp + 0x5cc], edx
lea esi, [esp + 0x5c8]
lea edx, [ecx + 0x2c]
mov dword [esp + 0x5d0], 0x103986f0
mov dword [esp + 0x270], esi
mov dword [esp + 0x274], 1
mov dword [esp + 0x278], edx
lea edx, [esp + 0x270]
jmp 0x10086fe3
mov eax, dword [esp + 0x14]
mov ebx, dword [eax + 0x10]
mov al, byte [ebx + 0x20]
test al, al
jne 0x10086ec2
mov eax, dword [esi]
mov ecx, dword [eax + 4]
push dword [eax]
call dword [ecx]
add esp, 4
mov cl, 1
mov edi, eax
mov esi, edx
xchg byte [ebx + 0x10], cl
test cl, cl
je 0x10086e9c
push edi
call dword [esi + 0xc]
add esp, 4
jmp 0x10086ec2
mov edx, dword [esp + 0x14]
cmp byte [edx + 0x118], 0
jne 0x10086a80
mov eax, dword [edx + 0x40]
xor eax, 4
or eax, dword [edx + 0x44]
jne 0x10086bc8
mov esi, dword [edx + 0x88]
mov edi, dword [edx + 0x8c]
mov dword [edx + 0x88], 0
cmp esi, 1
mov dword [esp + 0x508], esi
mov dword [esp + 0x50c], edi
jne 0x10086d15
mov dword [esp + 0x78], edi
mov esi, dword [edx + 0x70]
mov dword [edx + 0x70], 0
test esi, esi
je 0x1008701f
test edi, edi
je 0x100867f8
mov eax, dword [edi + 8]
nop
mov ecx, eax
or ecx, 2
lock cmpxchg dword [edi + 8], ecx
jne 0x10086ad0
and eax, 5
cmp eax, 1
jne 0x10086af4
mov eax, dword [edi + 0x34]
push dword [edi + 0x30]
call dword [eax + 8]
mov edx, dword [esp + 0x18]
add esp, 4
lock dec dword [edi]
jne 0x100867f8
lea ecx, [esp + 0x78]
call fcn.100652a0
jmp 0x100867f4
mov eax, dword [esi + 0x118]
mov al, byte [eax + 8]
jmp 0x10086b25
mov ecx, dword [esi + 0x118]
mov edi, edx
call fcn.100f4830
mov edx, edi
movzx edi, al
mov al, 2
xor ebx, ebx
mov dword [esp + 4], 0
shl edi, 8
mov dword [esp + 0x10], eax
or edi, 1
cmp byte [esp], 0
jne 0x10086b51
mov eax, dword [0x10551f14]
test eax, eax
jne 0x10087001
mov esi, dword [edx]
mov eax, dword [0x10551f24]
test eax, eax
je 0x10086b75
cmp eax, 0x100f3390
jne 0x10086b9a
mov eax, dword [esi]
mov byte [eax + 0x18], 0
push eax
call sub.KERNEL32.dll_LeaveCriticalSection
test bl, bl
jne 0x10086bc8
jmp 0x10086bd7
mov ecx, 0x103a03b9
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov eax, 0x100f3390
cmovne eax, edx
mov dword [0x10551f24], eax
cmp eax, 0x100f3390
je 0x10086b63
mov eax, dword [0x10551f3c]
test eax, eax
jne 0x10086bc1
mov ecx, str.ReleaseSRWLockExclusive
mov edx, 0x17
call fcn.100f2fc0
test eax, eax
mov eax, 0x100f51d0
cmovne eax, edx
mov dword [0x10551f3c], eax
push esi
call eax
test bl, bl
je 0x10086bd7
mov eax, dword [esp + 0x40]
mov dword [eax], 2
jmp 0x10086ff9
test edi, edi
sete al
test byte [esp + 4], al
je 0x10086cde
mov eax, dword [0x10551ebc]
cmp eax, 5
jb 0x10086bf5
mov eax, dword [0x10551ec0]
mov eax, dword [0x10411958]
dec eax
cmp eax, 5
jb 0x10086fe8
mov ecx, dword [0x104116c8]
test ecx, ecx
je 0x10086fe8
mov al, 1
cmp ecx, 1
je 0x10086c24
cmp ecx, 2
jne 0x10087210
mov al, 2
movzx edx, al
mov ecx, 0x104116c8
call fcn.10109ff0
test al, al
je 0x10086fe8
mov ecx, dword [0x104116cc]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x1008757f
mov edx, dword [ecx + 0x2c]
mov esi, dword [ecx + 0x34]
mov edi, dword [ecx + 0x38]
mov dword [esp + 0x178], 0
mov dword [esp + 0x78], 0x10399c68
mov dword [esp + 0x7c], 1
mov dword [esp + 0x80], 0
mov dword [esp + 0x88], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0x8c], 0
mov dword [esp + 0x17c], edx
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], esi
lea esi, [esp + 0x178]
lea edx, [esp + 0x78]
mov dword [esp + 0x188], edi
mov dword [esp + 0x768], esi
mov dword [esp + 0x76c], edx
lea esi, [esp + 0x768]
lea edx, [ecx + 0x2c]
mov dword [esp + 0x770], 0x103986f0
jmp 0x10086fc3
mov eax, dword [esp + 0x10]
lea ecx, [esp + 0x78]
mov byte [esp + 0x78], al
mov byte [esp + 0x79], 6
mov dword [esp + 0x7c], edi
mov dword [esp + 0x80], 0
call fcn.100393d0
mov ecx, dword [esp + 0x40]
mov dword [ecx], 1
mov dword [ecx + 4], eax
jmp 0x10086ff9
mov eax, dword [edx + 0x9c]
lea ecx, [esp + 0x480]
push dword [ebp + 8]
push dword [edx + 0x98]
push ecx
call dword [eax + 0x18]
add esp, 0xc
mov al, byte [esp + 0x480]
cmp al, 4
je 0x10086bc8
mov edx, dword [esp + 0x484]
mov ecx, dword [esp + 0x481]
cmp al, 3
mov dword [esp + 0x66b], edx
mov dword [esp + 0x668], ecx
jne 0x1008702b
mov eax, dword [0x10551ebc]
mov edx, dword [esp + 0x14]
cmp eax, 5
jb 0x10086d78
mov eax, dword [0x10551ec0]
mov eax, dword [0x10411958]
dec eax
cmp eax, 5
jb 0x100871b7
mov ecx, dword [0x104114a0]
test ecx, ecx
je 0x100871b7
mov al, 1
cmp ecx, 1
je 0x10086da7
cmp ecx, 2
jne 0x100872b8
mov al, 2
movzx edx, al
mov ecx, 0x104114a0
call fcn.10109ff0
mov edx, dword [esp + 0x14]
test al, al
je 0x100871b7
mov ecx, dword [0x104114a4]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x100875c9
mov ebx, dword [ecx + 0x34]
mov edx, dword [ecx + 0x2c]
mov dword [esp + 4], ebx
mov ebx, dword [ecx + 0x38]
mov dword [esp + 0x178], 0
mov dword [esp + 0x17c], edx
mov dword [esp + 0x180], eax
mov dword [esp + 0x78], 0x10399e6c
mov dword [esp + 0x7c], 1
mov dword [esp + 0x80], 0
mov dword [esp + 0x88], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0x8c], 0
mov eax, dword [esp + 4]
mov dword [esp], ebx
lea ebx, [esp + 0x178]
mov edx, dword [esp]
mov dword [esp + 0x184], eax
mov dword [esp + 0x270], ebx
lea ebx, [esp + 0x270]
mov dword [esp + 0x768], ebx
mov dword [esp + 0x76c], 1
mov dword [esp + 0x188], edx
lea edx, [esp + 0x78]
mov dword [esp + 0x274], edx
lea edx, [ecx + 0x2c]
mov dword [esp + 0x278], 0x103986f0
mov dword [esp + 0x770], edx
lea edx, [esp + 0x768]
call fcn.1010a850
mov edx, dword [esp + 0x14]
jmp 0x100871b7
mov eax, dword [ebx + 0xc]
test eax, eax
je 0x10086eac
push dword [ebx + 8]
call dword [eax + 0xc]
add esp, 4
mov dword [ebx + 8], edi
mov dword [ebx + 0xc], esi
xor eax, eax
xchg byte [ebx + 0x10], al
mov al, byte [ebx + 0x20]
test al, al
je 0x10086bc8
mov al, 1
xchg byte [ebx + 0x21], al
test al, al
jne 0x10086ed0
xor eax, eax
xchg byte [ebx + 0x21], al
mov eax, dword [0x10551ebc]
cmp eax, 5
jb 0x10086edf
mov eax, dword [0x10551ec0]
mov eax, dword [0x10411958]
dec eax
cmp eax, 5
jb 0x10086fe8
mov ecx, dword [0x10411710]
test ecx, ecx
je 0x10086fe8
mov al, 1
cmp ecx, 1
je 0x10086f0e
cmp ecx, 2
jne 0x10087247
mov al, 2
movzx edx, al
mov ecx, 0x10411710
call fcn.10109ff0
test al, al
je 0x10086fe8
mov ecx, dword [0x10411714]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x100875a7
mov edx, dword [ecx + 0x2c]
mov esi, dword [ecx + 0x34]
mov edi, dword [ecx + 0x38]
mov dword [esp + 0x178], 0
mov dword [esp + 0x78], 0x10399e3c
mov dword [esp + 0x7c], 1
mov dword [esp + 0x80], 0
mov dword [esp + 0x88], str.formatter_errorfailed_to_write_whole_buffer
mov dword [esp + 0x8c], 0
mov dword [esp + 0x17c], edx
mov dword [esp + 0x180], eax
mov dword [esp + 0x184], esi
lea esi, [esp + 0x178]
lea edx, [esp + 0x78]
mov dword [esp + 0x188], edi
mov dword [esp + 0x270], esi
mov dword [esp + 0x274], edx
lea esi, [esp + 0x270]
lea edx, [ecx + 0x2c]
mov dword [esp + 0x278], 0x103986f0
mov dword [esp + 0x5c8], esi
mov dword [esp + 0x5cc], 1
mov dword [esp + 0x5d0], edx
lea edx, [esp + 0x5c8]
call fcn.1010a850
mov eax, dword [esp + 0x40]
mov dword [eax], 0
mov dword [eax + 4], 0
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
mov dword [esp + 8], edx
call fcn.100faaa0
mov edx, dword [esp + 8]
test al, al
jne 0x10086b51
mov byte [esi + 0xc], 1
jmp 0x10086b51
xor ecx, ecx
mov eax, 1
jmp 0x1008681c
mov byte [esp + 0x338], al
mov eax, dword [esp + 0x668]
mov ecx, dword [esp + 0x66b]
mov dword [esp + 0x339], eax
mov dword [esp + 0x33c], ecx
mov eax, dword [0x10551ebc]
mov edx, dword [esp + 0x14]
cmp eax, 4
jb 0x10087061
mov eax, dword [0x10551ec0]
mov eax, dword [0x10411958]
add eax, 0xfffffffe
cmp eax, 4
jb 0x1008719e
mov ecx, dword [0x104114ac]
test ecx, ecx
je 0x1008719e
mov al, 1
cmp ecx, 1
je 0x10087092
cmp ecx, 2
jne 0x100872d3
mov al, 2
movzx edx, al
mov ecx, 0x104114ac
call fcn.10109ff0
mov edx, dword [esp + 0x14]
test al, al
je 0x1008719e
mov ecx, dword [0x104114b0]
mov eax, dword [ecx + 0x30]
test eax, eax
je 0x100875dd
mov ebx, dword [ecx + 0x34]
mov edx, dword [ecx + 0x2c]
mov dword [esp + 4], ebx
mov ebx, dword [ecx + 0x38]
mov dword [esp + 0x178], 0
mov dword [esp + 0x17c], edx
mov dword [esp + 0x180], eax
mov dword [esp + 0x78], 0x10399eec
mov dword [esp + 0x7c], 1
mov dword [esp + 0x80], 0
mov eax, dword [esp + 4]
mov dword [esp], ebx
lea ebx, [esp + 0x338]
mov edx, dword [esp]
mov dword [esp + 0x184], eax
mov dword [esp + 0x270], ebx
lea ebx, [esp + 0x178]
mov dword [esp + 0x274], fcn.100f9290
mov dword [esp + 0x5c8], ebx
lea ebx, [esp + 0x5c8]
mov dword [esp + 0x768], ebx
mov dword [esp + 0x76c], 1
mov dword [esp + 0x188], edx
lea edx, [esp + 0x270]
mov dword [esp + 0x88], edx
lea edx, [esp + 0x78]
mov dword [esp + 0x8c], 1
mov dword [esp + 0x5cc], edx
lea edx, [ecx + 0x2c]
mov dword [esp + 0x5d0], 0x103986f0
mov dword [esp + 0x770], edx
lea edx, [esp + 0x768]
call fcn.1010a850
mov edx, dword [esp + 0x14]
mov ebx, dword [esp + 0x338]
cmp bl, 4
je 0x10086bc8
cmp bl, 3
jne 0x1008725e
test esi, esi
je 0x100871fd
test edi, edi
je 0x100871fd
mov eax, dword [edi + 8]
lea esi, [esp + 0x50c]
mov ecx, eax
or ecx, 2
lock cmpxchg dword [edi + 8], ecx
jne 0x100871c9
and eax, 5
cmp eax, 1
jne 0x100871ed
mov eax, dword [edi + 0x34]
push dword [edi + 0x30]
call dword [eax + 8]
mov edx, dword [esp + 0x18]
add esp, 4
lock dec dword [edi]
jne 0x100871fd
mov ecx, esi
call fcn.100652a0
mov edx, dword [esp + 0x14]
mov esi, dword [edx + 0x70]
mov dword [edx + 0x70], 0
test esi, esi
je 0x10087227
jmp 0x100867f8
mov ecx, 0x104116c8
call fcn.10109f40
test al, al
jne 0x10086c24
jmp 0x10086fe8
xor eax, eax
xor ecx, ecx
jmp 0x1008681c
mov ecx, 0x10411704
call fcn.10109f40
test al, al
jne 0x1008694f
jmp 0x10086fe8
mov ecx, 0x10411710
call fcn.10109f40
test al, al
jne 0x10086f0e
jmp 0x10086fe8
mov eax, dword [esp + 0x33c]
mov dword [esp], eax
call sub.KERNEL32.dll_GetProcessHeap
push 0xc
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x100875bb
mov dword [eax], 0
mov esi, eax
mov byte [eax + 8], 0xd
call sub.KERNEL32.dll_GetProcessHeap
push 8
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
test eax, eax
je 0x100875c2
mov ecx, dword [esp]
mov dword [eax], ebx
mov dword [eax + 4], ecx
mov dword [esi], eax
mov dword [esi + 4], 0x10384ecc
jmp 0x100867f4
mov ecx, 0x104114a0
call fcn.10109f40
mov edx, dword [esp + 0x14]
test al, al
jne 0x10086da7
jmp 0x100871b7
mov ecx, 0x104114ac
call fcn.10109f40
mov edx, dword [esp + 0x14]
test al, al
jne 0x10087092
jmp 0x1008719e
mov edx, dword [esp + 0x30]
mov ecx, edi
push 0x10398228
call fcn.10008590
add esp, 4
ud2
mov edx, dword [esp + 0x30]
jmp 0x100872f4
mov ecx, 0x103c93eb
mov edx, 0x2b
push 0x10387cb8
push 0x10387ca8
lea eax, [esp + 0x68]
push eax
call fcn.1000aa20
add esp, 0xc
ud2
lea ecx, [esp + 0x78]
call fcn.10019170
ud2
mov edx, dword [esp + 0x18]
jmp 0x100872f4
mov eax, dword [esp]
mov dword [esp + 0x78], edx
mov ecx, 0x103c93eb
mov edx, 0x2b
mov byte [esp + 0x7c], al
lea eax, [esp + 0x78]
push 0x10399ba0
push 0x1039992c
jmp 0x10087321
mov ecx, str.called__Option::unwrap____on_a__None__valueC:UsersAdministrator.cargo_registry_srcgithub.com_1ecc6299db9ec823url_2.2.0_srclib.rs__file
mov edx, 0x2b
push 0x10399cec
call fcn.10008540
add esp, 4
ud2
mov ecx, edi
mov edx, eax
push 0x1039ef3c
jmp 0x100872f9
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10387c54
call fcn.1000a9c0
add esp, 4
ud2
lea ecx, [esp + 0x178]
call fcn.10019170
ud2
mov eax, dword [esp + 4]
mov ecx, 0x103c93eb
mov edx, 0x2b
mov dword [esp + 0x78], eax
mov eax, dword [esp + 8]
mov byte [esp + 0x7c], al
lea eax, [esp + 0x78]
push 0x10399d14
push 0x1039992c
jmp 0x10087321
mov dword [esp + 0x78], ecx
mov byte [esp + 0x7c], dl
lea eax, [esp + 0x78]
mov ecx, 0x103c93eb
mov edx, 0x2b
push 0x10399d34
push 0x10399d24
jmp 0x10087321
mov ecx, 0x103c93eb
mov edx, 0x2b
push 0x10387be0
jmp 0x10087422
mov ecx, 0x103c93eb
mov edx, 0x2b
push 0x10387c00
push 0x10387bd0
jmp 0x1008731d
lea ecx, [esp + 0x78]
call fcn.100191c0
ud2
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10399c40
jmp 0x10087398
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10399d04
jmp 0x10087398
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10387c88
jmp 0x10087398
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10387c98
jmp 0x10087398
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10399d5c
jmp 0x10087398
mov ecx, str.assertion_failed:_self.ref_count___usize::MAX
mov edx, 0x2d
push 0x1037cb84
call fcn.10016fa0
add esp, 4
ud2
mov ecx, 0x103c93eb
mov edx, 0x2b
mov dword [esp + 0x270], ebx
mov byte [esp + 0x274], al
push 0x10399d44
push 0x1039992c
lea eax, [esp + 0x278]
jmp 0x10087321
lea ecx, [esp + 0x270]
call fcn.10019170
ud2
mov ecx, 0x28
jmp 0x1008755a
mov ecx, str.cannot_clone__Sender_____too_many_outstanding_senders
mov edx, 0x35
push 0x10399da4
jmp 0x1008754b
mov ecx, 4
jmp 0x1008755a
ud2
mov ecx, 0x14
jmp 0x1008755a
mov ecx, 0x3c
jmp 0x1008755a
mov ecx, 0x1c
jmp 0x1008755a
mov ecx, str.must_be_called_from_the_context_of_Tokio_runtime_configured_with_either__basic_scheduler__or__threaded_scheduler_
mov edx, 0x71
push 0x10398ef0
jmp 0x10087398
mov ecx, str.spawning_not_enabled_for_runtime
mov edx, 0x20
push 0x10398f34
call fcn.1004d820
add esp, 4
ud2
mov ecx, 0x44
mov edx, 4
call fcn.100067d0
ud2
mov ecx, 0x103c9a77
mov edx, 0x46
push 0x103c9ac0
push 0x103a1ea0
jmp 0x1008731d
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10399cdc
jmp 0x10087398
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10399e2c
jmp 0x10087398
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10399e44
jmp 0x10087398
mov ecx, 0xc
jmp 0x1008755a
mov ecx, 8
jmp 0x1008755a
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10399edc
jmp 0x10087398
mov ecx, 0x103986bd
mov edx, 0x22
push 0x10399ef4
jmp 0x10087398