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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
mov eax, 0x31c8
call fcn.00437d10
mov edi, ecx
mov ecx, edx
mov ebx, edx
call fcn.004021a4
mov ecx, dword [ebx]
mov edx, dword [ebx + 4]
and dword [ebx], 0
call fcn.00404a25
sub esp, 8
lea esi, [esp + 0x11cc]
mov edx, ebx
mov dword [esp + 4], 2
mov ecx, esi
call fcn.00401dea
pop eax
pop ecx
cmp dword [esi], 0
je 0x40272f
movsd xmm0, qword [esp + 0x11c8]
movsd qword [edi], xmm0
jmp 0x403aa2
lea esi, [esp + 0x11c4]
lea ecx, [ebx + 0x44]
mov dword [esp + 0x54], edi
movzx eax, byte [esi + 8]
mov edx, dword [esi + 4]
mov dword [esp + 0x58], ecx
push eax
call fcn.00407487
pop eax
mov ecx, ebx
call fcn.00403b5e
and dword [ebx + 0x3c], 0
xor eax, eax
mov byte [esp + 0x40], 4
mov byte [esp], 2
mov dword [esp + 0x30], ebx
mov edx, dword [ebx + 0x44]
mov ecx, dword [ebx + 0x4c]
mov edi, dword [ebx + 0x48]
test edx, edx
mov dword [esp + 0x2c], ecx
mov dword [esp + 0x28], edx
mov dword [esp + 0x20], edi
setne al
cmove ecx, edx
mov dword [esi], eax
and dword [esi + 4], 0
mov dword [esi + 8], edx
mov dword [esi + 0xc], edi
mov dword [esi + 0x10], eax
and dword [esi + 0x14], 0
mov dword [esi + 0x18], edx
mov dword [esi + 0x1c], edi
mov dword [esi + 0x20], ecx
mov edx, dword [esp + 0x40]
mov ecx, dword [ebx + 0x40]
and dword [esi + 0x24], 0
mov esi, dword [esp + 0x44]
mov dword [esp + 0xc], edx
mov dword [esp + 4], ecx
mov edx, dword [ebx + 0x24]
mov ecx, dword [ebx + 0x2c]
mov dword [esp + 8], edx
mov dword [esp + 0x10], ecx
lea ecx, [esp + 0x11c4]
call fcn.00401122
test eax, eax
mov dword [esp + 0x14], esi
je 0x40288c
mov ecx, dword [esp + 0x11e4]
mov edi, eax
add ecx, dword [esp + 0x11e8]
cmp dword [esp + 4], ecx
ja 0x40288c
mov ebx, dword [esp + 0xc]
mov dword [esp + 0xe68], esi
lea ecx, [esp + 0xe4]
mov edx, edi
mov dword [esp + 0xe64], ebx
push dword [esp + 0x10]
push dword [esp + 0xc]
call fcn.00403bdd
pop eax
pop ecx
mov esi, dword [esp + 0xe4]
lea ecx, [esp + 0x7a4]
mov edx, esi
push dword [esp + 0xec]
call fcn.00436640
pop eax
mov edx, dword [esp + 0xe8]
mov ecx, esi
mov esi, dword [esp + 0x14]
call fcn.0041218f
cmp bl, 4
lea ecx, [esp + 0x7a4]
lea eax, [esp + 0xe64]
cmove ebx, dword [esp + 0x7a4]
cmove esi, dword [esp + 0x7a8]
cmove ecx, eax
mov dword [esp + 0xc], ebx
call fcn.00404af7
mov al, byte [edi + 4]
mov ebx, dword [edi]
mov byte [esp], al
jmp 0x4027c7
mov eax, dword [esp + 0xc]
cmp byte [esp], 2
mov dword [esp + 0x44], esi
mov dword [esp + 0x40], eax
jne 0x4028a7
mov ecx, dword [esp + 0x30]
jmp 0x402ec3
cmp dword [esp + 0x2c], 0
je 0x402e63
mov eax, dword [esp + 0x28]
test eax, eax
cmovne eax, dword [esp + 0x58]
mov dword [esp + 0x28], eax
je 0x403b42
call fcn.0040780d
lea esi, [esp + 0x11c4]
mov edi, dword [esp + 0x20]
and dword [esi + 4], 0
mov dword [esi], eax
sub edi, 1
jb 0x4028eb
mov ecx, esi
call fcn.00407462
jmp 0x4028dd
lea eax, [esp + 0x11c4]
mov edi, dword [esp + 0x20]
mov dword [esp + 0x18], ebx
mov esi, dword [eax]
mov eax, dword [eax + 4]
mov dword [esp + 0x7a4], esi
mov dword [esp], eax
mov dword [esp + 0x7a8], eax
mov eax, dword [esp + 0x28]
mov edx, dword [eax]
lea ecx, [esp + 0x11c4]
push ebx
push edi
call fcn.00407a79
pop eax
pop ecx
cmp word [esi + 0x5e], 0
jne 0x403ae2
mov ecx, dword [esp]
cmp ecx, dword [esp + 0x11cc]
jne 0x403af1
mov eax, dword [esp + 0x11c8]
mov ebx, dword [esp + 0x11d0]
movzx edi, word [eax + 0x5e]
cmp edi, ebx
jne 0x40295d
test ecx, ecx
jne 0x4029be
jmp 0x4029d4
sub edi, ebx
mov word [eax + 0x5e], bx
lea ecx, [eax + ebx*8]
mov word [esi + 0x5e], di
mov edx, edi
push edi
push esi
mov dword [esp + 0xc], eax
call fcn.0040769d
pop eax
pop ecx
mov ecx, edi
mov edx, edi
call fcn.004076f7
mov eax, dword [esp + 4]
cmp dword [esp], 0
je 0x4029d4
lea ecx, [eax + ebx*4 + 0x64]
lea eax, [edi + 1]
mov edx, edi
mov dword [esp + 8], eax
lea eax, [esi + 0x64]
push edi
push eax
call fcn.004076ca
pop eax
pop ecx
xor edx, edx
mov ecx, esi
inc edx
push dword [esp + 8]
call fcn.00407558
mov eax, dword [esp + 8]
mov ecx, dword [esp + 4]
add esp, 4
lea eax, [eax + ebx*4 + 0x60]
mov esi, dword [esi + 0x60]
mov ebx, dword [esp + 0x18]
dec ecx
mov dword [esp], ecx
mov edi, ecx
jmp 0x402914
mov esi, dword [esp + 0x28]
mov ecx, esi
call fcn.00407050
mov edx, dword [esi]
cmp word [edx + 0x5e], 0
je 0x402bda
mov eax, dword [esp + 0x30]
lea ecx, [esp + 0xe4]
push dword [eax + 0x48]
call fcn.004079b9
pop eax
mov ecx, dword [esp + 0xe8]
test ecx, ecx
je 0x402bd1
mov ebx, dword [esp + 0xe4]
mov eax, dword [esp + 0xec]
mov edx, dword [ebx + eax*4 + 0x64]
mov esi, dword [ebx + eax*4 + 0x60]
mov dword [esp], edx
movzx edx, word [edx + 0x5e]
movzx edi, word [esi + 0x5e]
mov word [esp + 4], dx
movzx edx, dx
mov dword [esp + 0x10], edi
lea edi, [edx + edi + 1]
mov dword [esp + 8], edx
cmp edi, 0xc
lea edi, [ecx - 1]
jae 0x402a93
mov dword [esp + 0x11c4], ebx
mov dword [esp + 0x11c8], ecx
mov dword [esp + 0x11cc], eax
mov eax, dword [esp]
lea ecx, [esp + 0x11c4]
mov dword [esp + 0x11d0], esi
mov dword [esp + 0x11d4], edi
mov dword [esp + 0x11d8], eax
mov dword [esp + 0x11dc], edi
call fcn.00407857
mov edi, edx
jmp 0x402bc2
cmp word [esp + 4], 5
mov dword [esp + 0x1c], ebx
mov dword [esp + 0x20], eax
mov dword [esp + 0x18], esi
ja 0x402bbf
mov dword [esp + 4], edi
push 6
pop edi
mov edx, dword [esp + 8]
mov ecx, 0
sub edi, edx
cmovb edi, ecx
lea eax, [edi + edx]
cmp eax, 0xc
mov dword [esp + 0x24], eax
jae 0x403b1e
mov esi, dword [esp + 0x10]
mov ecx, dword [esp + 0x18]
mov ebx, dword [esp]
shl edx, 3
mov eax, esi
sub eax, edi
mov dword [esp + 0x34], eax
mov word [ecx + 0x5e], ax
mov eax, dword [esp + 0x24]
mov word [ebx + 0x5e], ax
lea eax, [ebx + edi*8]
mov dword [esp + 0x38], eax
push edx
push ebx
push eax
call fcn.00438e60
add esp, 0xc
mov edx, dword [esp + 0x34]
mov eax, dword [esp + 0x18]
lea ecx, [edx + 1]
mov dword [esp + 0x3c], ecx
sub esi, ecx
lea ecx, [eax + edx*8 + 8]
lea eax, [edi - 1]
mov dword [esp + 8], ecx
mov dword [esp + 0x10], eax
mov edx, esi
push eax
push ebx
call fcn.0040769d
pop eax
pop ecx
mov edx, dword [esp + 0x10]
mov ecx, esi
call fcn.004076f7
mov eax, dword [esp + 8]
mov ebx, dword [esp + 0x20]
mov ecx, dword [esp + 0x1c]
cmp dword [esp + 4], 0
mov esi, dword [eax - 8]
mov dh, byte [eax - 4]
mov dl, byte [ecx + ebx*8 + 4]
mov eax, dword [ecx + ebx*8]
mov dword [ecx + ebx*8], esi
mov esi, dword [esp + 0x38]
mov byte [ecx + ebx*8 + 4], dh
mov dword [esi - 8], eax
mov byte [esi - 4], dl
je 0x402bbd
mov esi, dword [esp + 0x24]
mov ebx, dword [esp]
inc esi
lea edx, [ebx + 0x60]
lea eax, [ebx + edi*4 + 0x60]
mov ecx, esi
mov dword [esp + 8], edx
sub ecx, edi
shl ecx, 2
push ecx
push edx
push eax
call fcn.00438e60
add esp, 0xc
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x3c]
mov edx, edi
lea ecx, [eax + ecx*4 + 0x60]
push edi
push dword [esp + 0xc]
call fcn.004076ca
pop eax
pop ecx
mov ecx, ebx
xor edx, edx
push esi
call fcn.00407558
pop eax
mov edi, dword [esp + 4]
mov eax, ebx
jmp 0x402bc2
xor edi, edi
mov eax, dword [esp]
lea ecx, [esp + 0xe4]
mov edx, eax
push edi
jmp 0x4029fa
mov ecx, dword [esp + 0x28]
call fcn.00407050
lea esi, [esp + 0x7a4]
mov ecx, esi
call fcn.00407050
mov esi, dword [esi]
cmp word [esi + 0x5e], 0
je 0x402e20
lea ecx, [esp + 0xe4]
mov edx, esi
push dword [esp + 0x7a8]
call fcn.004079e6
pop eax
mov esi, dword [esp + 0xe8]
test esi, esi
je 0x402e10
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0xec]
mov edx, dword [eax + ecx*4 + 0x60]
mov ebx, dword [eax + ecx*4 + 0x64]
movzx edi, word [edx + 0x5e]
mov dword [esp], ebx
movzx ebx, word [ebx + 0x5e]
mov word [esp + 8], di
movzx edi, di
mov dword [esp + 4], ebx
lea ebx, [edi + ebx + 1]
mov dword [esp + 0x18], edi
cmp ebx, 0xc
lea ebx, [esi - 1]
jae 0x402ca0
mov dword [esp + 0x11c4], eax
mov eax, dword [esp]
mov dword [esp + 0x11c8], esi
mov dword [esp + 0x11cc], ecx
lea ecx, [esp + 0x11c4]
mov dword [esp + 0x11d0], edx
mov dword [esp + 0x11d4], ebx
mov dword [esp + 0x11d8], eax
mov dword [esp + 0x11dc], ebx
call fcn.00407857
mov ebx, eax
mov edi, edx
jmp 0x402e01
cmp word [esp + 8], 5
mov dword [esp + 0x24], eax
mov dword [esp + 0x1c], ecx
mov dword [esp + 0x20], ebx
mov dword [esp + 0x10], edx
jbe 0x402cc5
mov ebx, dword [esp + 0x10]
mov edi, dword [esp + 0x20]
jmp 0x402e01
push 6
pop esi
mov edx, dword [esp + 0x18]
mov edi, 0
mov ecx, dword [esp + 0x10]
sub esi, edx
cmovb esi, edi
lea eax, [esi + edx]
cmp eax, 0xc
jae 0x403b2d
mov edi, dword [esp + 4]
mov word [ecx + 0x5e], ax
mov ecx, dword [esp]
mov dword [esp + 8], eax
mov ebx, dword [esp + 0x24]
sub edi, esi
mov dword [esp + 4], edi
mov word [ecx + 0x5e], di
lea edi, [ecx + esi*8]
mov ecx, dword [esp + 0x1c]
mov al, byte [edi - 4]
mov dword [esp + 0x38], edi
mov edi, dword [edi - 8]
mov ah, byte [ebx + ecx*8 + 4]
mov dword [esp + 0x5c], edi
mov edi, dword [ebx + ecx*8]
mov byte [esp + 0x34], al
mov al, byte [esp + 0x34]
mov dword [esp + 0x3c], edi
mov edi, dword [esp + 0x5c]
mov dword [ebx + ecx*8], edi
mov byte [ebx + ecx*8 + 4], al
mov edi, dword [esp + 0x10]
mov ebx, dword [esp + 0x3c]
lea ecx, [edx + 1]
mov dword [esp + 0x18], ecx
mov dword [edi + edx*8], ebx
lea edi, [esi - 1]
mov ebx, dword [esp + 0x10]
mov dword [esp + 0x1c], edi
mov edi, dword [esp + 8]
mov byte [ebx + edx*8 + 4], ah
lea eax, [ebx + ecx*8]
mov edx, dword [esp + 0x1c]
sub edi, ecx
mov ecx, dword [esp]
push edi
push eax
call fcn.0040769d
pop eax
pop ecx
mov ecx, dword [esp + 0x1c]
mov edx, edi
call fcn.004076f7
mov eax, dword [esp + 4]
lea eax, [eax*8]
push eax
push dword [esp + 0x3c]
push dword [esp + 8]
call fcn.00438e60
add esp, 0xc
mov edi, dword [esp + 0x20]
test edi, edi
je 0x402dff
mov eax, dword [esp]
inc dword [esp + 8]
mov edx, esi
lea ecx, [eax + 0x60]
mov eax, dword [esp + 0x18]
mov dword [esp + 0x1c], ecx
lea eax, [ebx + eax*4 + 0x60]
push esi
push eax
call fcn.004076ca
pop eax
pop ecx
mov eax, dword [esp]
lea eax, [eax + esi*4 + 0x60]
mov esi, dword [esp + 4]
lea ecx, [esi*4 + 4]
push ecx
push eax
push dword [esp + 0x24]
call fcn.00438e60
add esp, 0xc
mov edx, dword [esp + 0x18]
mov ecx, ebx
push dword [esp + 8]
call fcn.00407558
pop eax
mov ecx, dword [esp]
inc esi
xor edx, edx
push esi
call fcn.00407558
pop eax
jmp 0x402e01
xor edi, edi
lea ecx, [esp + 0xe4]
mov edx, ebx
push edi
jmp 0x402c05
lea esi, [esp + 0x7a4]
mov ecx, esi
call fcn.00407050
mov esi, dword [esi]
mov eax, dword [esp + 0x30]
mov ebx, dword [esp + 0x7a8]
mov edx, dword [eax + 0x48]
cmp edx, ebx
mov dword [esp + 0x20], edx
jae 0x402e71
mov eax, dword [esp + 0x28]
mov ecx, dword [eax]
and dword [esp + 0x11c4], 0
lea eax, [esp + 0x11c4]
push eax
call fcn.00407af8
pop eax
mov ecx, dword [esp + 0x11c4]
mov eax, dword [esp + 0x2c]
sub eax, ecx
mov edx, ecx
jmp 0x402e98
mov dword [esp + 0x2c], 0
xor esi, esi
xor eax, eax
jmp 0x402ea3
and dword [esp + 0x11c4], 0
mov edx, ebx
lea eax, [esp + 0x11c4]
mov ecx, esi
push eax
call fcn.00407af8
pop eax
mov eax, dword [esp + 0x11c4]
mov edx, dword [esp + 0x2c]
sub edx, eax
mov ecx, dword [esp + 0x30]
mov dword [esp + 0x2c], edx
mov dword [ecx + 0x4c], edx
lea ecx, [esp + 0x11c4]
mov dword [ecx], esi
mov dword [ecx + 4], ebx
mov dword [ecx + 8], eax
call fcn.0040483e
mov ecx, dword [esp + 0x30]
mov esi, dword [esp + 0x14]
mov eax, dword [esp + 0xc]
cmp dword [ecx + 0x1c], 0
je 0x402f33
mov edi, dword [esp + 0x2c]
mov esi, dword [ecx + 0x44]
mov ebx, dword [esp + 0x20]
xor edx, edx
mov dword [esp + 0x24], 0
mov eax, edi
sub eax, dword [ecx + 0x20]
lea ecx, [esp + 0xe4]
test eax, eax
cmovle eax, edx
xor edx, edx
test esi, esi
setne dl
cmove edi, esi
mov dword [ecx], edx
and dword [ecx + 4], 0
mov dword [ecx + 8], esi
mov dword [ecx + 0xc], ebx
mov dword [ecx + 0x10], edx
and dword [ecx + 0x14], 0
mov dword [ecx + 0x18], esi
mov dword [ecx + 0x1c], ebx
mov dword [ecx + 0x20], edi
mov dword [ecx + 0x24], eax
call fcn.00401079
cmp dl, 2
jne 0x402f41
push 4
pop ecx
xor eax, eax
lea esi, [esp + 0x7a4]
jmp 0x403093
mov edi, esi
shr esi, 8
shld edi, eax, 0x18
jmp 0x403a54
mov esi, eax
mov ebx, edx
push 0x20
pop ecx
call fcn.004080b0
test eax, eax
je 0x403b51
and bl, 1
mov dword [eax], esi
mov dword [esp + 4], eax
mov byte [eax + 4], bl
push 0xa
pop ecx
lea edi, [esp + 0x11c4]
lea esi, [esp + 0xe4]
xor eax, eax
rep movsd dword es:[edi], dword [esi]
inc eax
mov dword [esp + 0x14], eax
push 4
pop eax
lea esi, [esp + 0x7a4]
mov dword [esp + 0x24], eax
lea ecx, [esp + 0x11c4]
call fcn.00401079
cmp dl, 2
je 0x40308b
mov edi, eax
mov eax, dword [esp + 0x24]
mov ecx, dword [esp + 0x14]
mov ebx, edx
cmp ecx, eax
jne 0x402ffa
mov edx, eax
xor ecx, ecx
inc edx
mov dword [esp], edx
je 0x403064
lea esi, [eax + eax]
cmp esi, edx
cmovbe esi, edx
cmp esi, 5
push 4
pop ecx
cmovb esi, ecx
xor edx, edx
cmp esi, 0x10000000
setb bh
test eax, eax
je 0x403003
lea ecx, [eax*8]
mov eax, dword [esp + 4]
mov dword [esp + 0x7a4], eax
mov dword [esp + 0x7ac], ecx
push 4
pop ecx
jmp 0x403005
mov eax, dword [esp + 4]
lea edx, [ecx + 1]
jmp 0x403074
xor ecx, ecx
lea eax, [esi*8]
mov dl, bh
mov dword [esp + 0x7a8], ecx
lea ecx, [esp + 0xe64]
mov dword [esp + 0xc], eax
lea eax, [esp + 0x7a4]
shl edx, 2
push eax
push dword [esp + 0x10]
call fcn.00413a46
pop eax
pop ecx
cmp dword [esp + 0xe64], 0
mov ecx, dword [esp + 0xe68]
je 0x403050
mov edx, dword [esp + 0xe6c]
jmp 0x40305d
mov dword [esp + 4], ecx
mov ecx, 0x80000001
mov dword [esp + 0x24], esi
lea esi, [esp + 0x7a4]
call fcn.00408164
mov eax, dword [esp + 4]
mov ecx, dword [esp + 0x14]
mov edx, dword [esp]
and bl, 1
mov dword [eax + ecx*8], edi
mov dword [esp + 4], eax
mov dword [esp + 0x14], edx
mov byte [eax + ecx*8 + 4], bl
jmp 0x402f89
mov ecx, dword [esp + 4]
mov eax, dword [esp + 0x14]
lea eax, [ecx + eax*8]
mov edi, ecx
mov dword [esp + 4], ecx
mov dword [esp + 0x38], eax
cmp edi, dword [esp + 0x38]
je 0x403a3a
mov ecx, dword [edi]
mov al, byte [edi + 4]
mov dword [esp + 0x18], edi
lea edx, [esp + 0x70]
mov dword [esp + 0x70], ecx
mov byte [esp + 0x74], al
mov eax, dword [esp + 0x30]
mov dword [esp + 0x20], ecx
lea ecx, [esp + 0xd4]
push dword [eax + 0x2c]
push dword [eax + 0x24]
call fcn.00403c6b
pop eax
pop ecx
mov eax, dword [esp + 0xd4]
mov ebx, dword [esp + 0xdc]
mov dword [esp + 0x11c4], 0x44f0d0
mov dword [esp + 0x11c8], 2
and dword [esp + 0x11d4], 0
mov dword [esp + 0x11cc], esi
lea esi, [esp + 0x11c4]
lea edi, [esp + 0xe4]
lea ecx, [esp + 0x60]
mov dword [esp + 0x11d0], 1
mov edx, esi
mov dword [esp + 0x7a4], edi
mov dword [esp + 0x7a8], 0x429bc0
mov dword [esp + 0xe4], eax
mov dword [esp + 8], eax
mov dword [esp + 0xe8], ebx
call fcn.0040c7c0
lea eax, [esp + 0x11d8]
and dword [esp + 0x11c4], 0
and dword [esp + 0x11cc], 0
and dword [esp + 0x11d0], 0
mov dword [esp + 0x11d4], 7
mov cl, 1
mov edx, esi
mov dword [esp + 0x1c], ebx
and dword [eax + 4], 0
and dword [eax], 0
and dword [eax + 0xa], 0
and dword [eax + 6], 0
mov byte [esp + 0x6c], cl
mov byte [esp + 0x11e0], cl
mov ecx, edi
push ebx
mov ebx, dword [esp + 0xc]
push ebx
call fcn.00426e40
pop eax
pop ecx
cmp byte [esp + 0xe4], 4
jne 0x4031c7
mov eax, dword [esp + 0xe8]
mov dword [esp], eax
jmp 0x4031e0
mov eax, dword [esp + 0xe4]
mov ecx, dword [esp + 0xe8]
cmp al, 4
jne 0x40390e
mov dword [esp], ecx
lea eax, [esp + 0x11d8]
mov edi, dword [esp + 0x60]
mov esi, dword [esp + 0x68]
and dword [esp + 0x11c4], 0
and dword [esp + 0x11cc], 0
and dword [esp + 0x11d0], 0
mov dword [esp + 0x11d4], 7
lea ecx, [esp + 0xe4]
lea edx, [esp + 0x11c4]
and dword [eax + 4], 0
and dword [eax], 0
and dword [eax + 0xa], 0
and dword [eax + 6], 0
mov al, 1
mov byte [esp + 0x11e1], al
mov byte [esp + 0x11e4], al
push esi
push edi
call fcn.00411f0c
pop eax
pop ecx
cmp byte [esp + 0xe4], 4
mov dword [esp + 0x10], edi
jne 0x403263
mov eax, dword [esp + 0xe8]
mov dword [esp + 0x14], eax
jmp 0x403281
mov eax, dword [esp + 0xe4]
mov ebx, dword [esp + 0xe8]
cmp al, 4
jne 0x40392e
mov dword [esp + 0x14], ebx
mov ebx, dword [esp + 8]
mov edx, dword [esp + 0x1c]
mov ecx, ebx
call fcn.0041223b
test al, al
je 0x403b00
mov ecx, edi
mov edx, esi
call fcn.0041223b
test al, al
je 0x403b0f
push 0xa
pop edi
xor edx, edx
mov ecx, edi
inc edx
call fcn.00413b44
mov esi, eax
mov dword [esp + 0x11c4], eax
mov dword [esp + 0x11c8], edx
mov dword [esp + 0x11cc], 0xa
mov ecx, eax
mov edx, edi
push 0x44f374
push 0
call fcn.004126c4
pop ecx
pop edx
mov byte [eax], 0x1f
mov ecx, esi
mov edx, edi
push 0x44f384
push 1
call fcn.004126c4
pop ecx
pop edx
mov byte [eax], 0x8b
mov ecx, esi
mov edx, edi
push 0x44f394
push 2
call fcn.004126c4
pop ecx
pop edx
mov byte [eax], 8
mov ecx, esi
mov edx, edi
push 0x44f3a4
push 3
call fcn.004126c4
pop ecx
pop edx
xor ebx, ebx
mov ecx, esi
mov edx, edi
mov byte [eax], bl
push 0x44f3b4
push 4
call fcn.004126c4
pop ecx
pop edx
mov byte [eax], bl
mov ecx, esi
mov edx, edi
push 0x44f3c4
push 5
call fcn.004126c4
pop ecx
pop edx
mov byte [eax], bl
mov ecx, esi
mov edx, edi
push 0x44f3d4
push 6
call fcn.004126c4
pop ecx
pop edx
mov byte [eax], bl
mov ecx, esi
mov edx, edi
push 0x44f3e4
push 7
call fcn.004126c4
pop ecx
pop edx
mov byte [eax], bl
mov ecx, esi
mov edx, edi
push 0x44f3f4
push 8
call fcn.004126c4
pop ecx
pop edx
mov byte [eax], bl
mov ecx, esi
mov edx, edi
push 0x44f404
push 9
call fcn.004126c4
pop ecx
pop edx
mov byte [eax], 0xff
xor edx, edx
mov ecx, 0x14ccc
movsd xmm0, qword [esp + 0x11c4]
mov eax, dword [esp + 0x11cc]
inc edx
movsd qword [esp + 0x48], xmm0
mov dword [esp + 0x50], eax
call fcn.00413b75
push 0x14ccc
push 0
mov dword [esp + 0x14], eax
push eax
call fcn.004393e0
add esp, 0xc
mov esi, 0xfffff940
mov edi, 0x120
mov ebx, 0x240
test esi, esi
je 0x403400
lea eax, [esp + esi + 0xe64]
push ebx
push 0
push eax
call fcn.004393e0
add esp, 0xc
add esi, ebx
jmp 0x4033e5
mov esi, 0xfffff940
test esi, esi
je 0x403420
lea eax, [esp + esi + 0x7a4]
push ebx
push 0
push eax
call fcn.004393e0
add esp, 0xc
add esi, ebx
jmp 0x403405
mov esi, 0xfffffca0
test esi, esi
je 0x403440
lea eax, [esp + esi + 0x11c4]
push edi
push 0
push eax
call fcn.004393e0
add esp, 0xc
add esi, edi
jmp 0x403425
mov edi, 0x6c0
push edi
lea eax, [esp + 0x7a8]
push eax
lea esi, [esp + 0x11cc]
push esi
call fcn.00438e60
add esp, 0xc
push edi
lea eax, [esp + 0xe8]
push eax
lea eax, [esp + 0x188c]
push eax
call fcn.00438e60
add esp, 0xc
push 0x360
lea eax, [esp + 0xe68]
push eax
lea eax, [esp + 0x1f4c]
push eax
call fcn.00438e60
add esp, 0xc
mov ecx, 0x10e0
push 2
pop ebx
mov edx, ebx
call fcn.00413b75
mov edi, eax
push 0x10e0
push esi
push eax
call fcn.00438e60
add esp, 0xc
mov ecx, 0x28102
mov edx, ebx
call fcn.00413b75
mov esi, eax
push 0x28102
push 0
push eax
call fcn.004393e0
add esp, 0xc
mov ecx, 0x10068
call fcn.00412452
mov ebx, eax
and dword [eax], 0
mov eax, dword [esp + 0xc]
mov dword [ebx + 4], eax
and dword [ebx + 0x10], 0
and dword [ebx + 0xc], 0
and dword [ebx + 0x18], 0
and dword [ebx + 0x14], 0
and dword [ebx + 0x1c], 0
xor eax, eax
inc eax
mov dword [ebx + 0x20], eax
and dword [ebx + 0x28], 0
and dword [ebx + 0x24], 0
and dword [ebx + 0x30], 0
and dword [ebx + 0x2c], 0
and dword [ebx + 0x34], 0
mov dword [ebx + 0x38], edi
mov dword [ebx + 0x3c], esi
lea eax, [ebx + 0x48]
push 0x10010
push 0
push eax
call fcn.004393e0
add esp, 0xc
xor eax, eax
mov ecx, 0x8000
xor edx, edx
inc eax
mov dword [ebx + 0x10058], eax
lea eax, [esp + 0x80]
and dword [ebx + 0x1005c], 0
and dword [ebx + 0x10060], 0
mov dword [ebx + 0x10064], 8
mov dword [ebx + 8], 0x80
mov byte [ebx + 0x34], 0
mov dword [ebx + 0x40], 0x2c
mov dword [ebx + 0x44], 0xc
mov dword [esp + 0x90], ebx
and dword [eax + 4], 0
and dword [eax + 0xc], 0
and dword [eax], 0
and dword [eax + 8], 0
call fcn.00413b44
xor ecx, ecx
mov esi, eax
mov edi, edx
inc ecx
call fcn.00411ed9
test al, al
je 0x4035da
push 0xa
pop ecx
call fcn.00411ed9
test al, al
je 0x4035da
mov dword [esp + 0xa8], 1
and dword [esp + 0xac], 0
and dword [esp + 0xb4], 0
and dword [esp + 0xb0], 0
lea ecx, [esp + 0x80]
jmp 0x4035f1
lea ecx, [esp + 0x80]
and dword [ecx + 0x2c], 0
and dword [ecx + 0x28], 0
and dword [ecx + 0x34], 0
and dword [ecx + 0x30], 0
mov eax, dword [esp + 0x14]
and dword [esp + 0xb8], 0
mov dword [esp + 0x78], 1
movsd xmm0, qword [esp + 0x48]
mov dword [esp + 0x7c], eax
mov eax, dword [esp + 0x50]
mov dword [esp + 0x98], esi
mov dword [esp + 0x9c], edi
and dword [esp + 0xa0], 0
and dword [esp + 0xcc], 0
movsd qword [ecx + 0x40], xmm0
mov dword [ecx + 0x48], eax
lea eax, [esp + 0x11c4]
lea ecx, [esp + 0xe4]
mov dword [esp + 0x7a4], eax
mov dword [esp + 0x7a8], 0x2000
and dword [esp + 0x7ac], 0
lea eax, [esp + 0x7b0]
and dword [eax], 0
lea esi, [esp + 0x7a4]
mov edx, dword [esp]
mov edi, ecx
push esi
call fcn.00436510
pop eax
cmp byte [esp + 0xe4], 4
je 0x4036b3
mov ecx, edi
call fcn.004044ac
test al, al
je 0x4038e6
mov ecx, dword [esp + 0xe4]
mov edx, dword [esp + 0xe8]
call fcn.00411f84
lea ecx, [esp + 0xe4]
jmp 0x403672
mov esi, dword [esp + 0x7a4]
mov edi, dword [esp + 0x7ac]
mov ebx, dword [esp + 0x7a8]
mov ecx, edi
mov edx, esi
push ebx
call fcn.00411f68
pop ecx
test edx, edx
je 0x4039bf
mov ecx, edi
mov edx, esi
push ebx
call fcn.00411f68
pop ecx
mov ecx, edi
mov edx, esi
push ebx
call fcn.00411f68
pop ecx
mov esi, edx
mov dword [esp + 0x14], eax
lea ecx, [esp + 0xe4]
test esi, esi
je 0x4038b1
cmp dword [esp + 0xcc], 0
jne 0x403aaa
lea edx, [esp + 0x78]
call fcn.00411fb7
cmp byte [esp + 0xe4], 4
je 0x403737
mov ebx, dword [esp + 0xe4]
cmp bl, 4
jne 0x40385f
lea ecx, [esp + 0xe64]
lea edx, [esp + 0x78]
call fcn.00412023
cmp byte [esp + 0xe64], 4
je 0x403761
mov ebx, dword [esp + 0xe64]
cmp bl, 4
jne 0x403874
mov ebx, dword [esp + 0x80]
lea ecx, [esp + 0xe64]
lea edx, [esp + 0x80]
push 0
lea eax, [esp + 0x9c]
push eax
push esi
push dword [esp + 0x20]
call fcn.004126e0
add esp, 0x10
mov edi, dword [esp + 0x80]
mov eax, dword [esp + 0xe64]
sub edi, ebx
jne 0x4037bf
cmp eax, 2
sete cl
cmp byte [esp + 0xe68], 2
sete dl
xor edi, edi
cmp eax, 2
jne 0x4037bf
and cl, dl
je 0x403737
cmp eax, 2
je 0x4037e7
lea ecx, [esp + 0xe8]
call fcn.00412589
mov ebx, dword [esp + 0xe8]
mov edi, dword [esp + 0xec]
cmp bl, 4
jne 0x40387b
cmp esi, edi
jb 0x403ac2
add dword [esp + 0xb8], edi
add dword [esp + 0xb0], edi
adc dword [esp + 0xb4], 0
cmp dword [esp + 0xa8], 0
je 0x403822
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0x14]
push edi
call fcn.00411a75
jmp 0x403833
mov ecx, dword [esp + 0xac]
mov edx, dword [esp + 0x14]
push edi
call fcn.0041192e
pop ecx
test edi, edi
lea ecx, [esp + 0xe4]
mov dword [esp + 0xac], eax
je 0x403993
mov eax, esi
sub eax, edi
jb 0x403ad2
add dword [esp + 0x14], edi
mov esi, eax
jmp 0x4036fe
mov edi, dword [esp + 0xe8]
mov dword [esp + 0x48], ebx
mov dword [esp + 0xc], ebx
mov dword [esp + 0x4c], edi
jmp 0x403895
mov edi, dword [esp + 0xe68]
mov eax, ebx
movzx ecx, bl
mov dword [esp + 0x4c], edi
shrd eax, edi, 8
shl eax, 8
or ecx, eax
mov dword [esp + 0xc], ecx
mov dword [esp + 0x48], ecx
lea ecx, [esp + 0x48]
call fcn.004044ac
test al, al
je 0x4038bd
movzx ecx, bl
mov edx, edi
call fcn.00411f84
jmp 0x4036f7
lea eax, [esp + 0x7ac]
jmp 0x403668
mov edx, dword [esp + 0xc]
lea ecx, [esp + 0xe4]
mov eax, edx
shr eax, 8
cmp dl, 4
mov dword [esp + 0x34], eax
lea eax, [esp + 0x7ac]
je 0x403668
jmp 0x40399a
mov edi, dword [esp + 0xe8]
mov ecx, dword [esp + 0xe4]
mov eax, edi
mov dword [esp + 0xc], ecx
shld edi, ecx, 0x18
shr eax, 8
mov ebx, eax
lea ecx, [esp + 0x78]
call fcn.0041227c
jmp 0x403942
mov edx, dword [esp + 0x60]
mov edi, eax
mov dword [esp + 0xc], eax
lea esi, [esp + 0x7a4]
shrd edi, ecx, 8
shr ecx, 8
mov ebx, ecx
mov dword [esp + 0x10], edx
jmp 0x40394b
mov edi, eax
mov dword [esp + 0xc], eax
lea esi, [esp + 0x7a4]
shrd edi, ebx, 8
shr ebx, 8
push dword [esp]
call dword [sym.imp.kernel32.dll_CloseHandle]
mov edx, dword [esp + 0x64]
mov ecx, dword [esp + 0x10]
call fcn.0041218f
cmp byte [esp + 0xc], 4
jne 0x403a61
mov edi, dword [esp + 0x18]
mov ecx, dword [esp + 0x58]
mov edx, dword [esp + 0x20]
add edi, 8
push 1
call fcn.004074de
pop eax
mov edx, dword [esp + 0xd8]
mov ecx, dword [esp + 8]
call fcn.0041218f
mov ecx, dword [esp + 4]
jmp 0x4030a0
mov dl, 2
mov edi, 0x45244c
mov eax, dword [esp + 0x34]
mov ecx, edi
shl edi, 0x18
mov dword [esp + 0xc], edx
lea esi, [esp + 0x7a4]
shr ecx, 8
mov ebx, ecx
and eax, 0xffffff
or edi, eax
jmp 0x403903
mov edx, dword [esp + 8]
lea ecx, [esp + 0x11c4]
push dword [esp + 0x1c]
call fcn.00436640
pop eax
cmp byte [esp + 0x11c4], 4
jne 0x4039eb
mov edi, dword [esp + 0x10]
lea esi, [esp + 0x7a4]
jmp 0x403a02
mov ecx, dword [esp + 0x11c4]
mov edi, dword [esp + 0x10]
lea esi, [esp + 0x7a4]
cmp cl, 4
jne 0x403a24
lea ecx, [esp + 0x78]
call fcn.0041227c
push dword [esp]
call dword [sym.imp.kernel32.dll_CloseHandle]
mov edx, dword [esp + 0x64]
mov ecx, edi
call fcn.0041218f
jmp 0x403963
mov eax, dword [esp + 0x11c8]
mov edi, ecx
mov dword [esp + 0xc], ecx
shrd edi, eax, 8
jmp 0x4038fe
mov edx, dword [esp + 0x24]
call fcn.00404b88
mov edi, dword [esp + 0x44]
mov eax, dword [esp + 0x40]
mov esi, edi
shld edi, eax, 0x18
shr esi, 8
cmp al, 4
jne 0x403a8d
mov eax, dword [esp + 0x54]
mov byte [eax], 4
jmp 0x403aa2
mov edx, dword [esp + 0xd8]
mov ecx, dword [esp + 8]
call fcn.0041218f
mov ecx, dword [esp + 4]
mov edx, dword [esp + 0x24]
call fcn.00404b88
lea ecx, [esp + 0x40]
call fcn.00404af7
mov eax, dword [esp + 0xc]
mov esi, ebx
mov ecx, dword [esp + 0x54]
shld esi, edi, 8
shl edi, 8
movzx eax, al
or eax, edi
mov dword [ecx + 4], esi
mov dword [ecx], eax
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
lea edx, [esp + 0xe4]
lea ecx, [esp + 0xcc]
and dword [edx], 0
call fcn.00446f48
ud2
mov ecx, edi
mov edx, esi
push 0x44f0bc
call fcn.004469c0
jmp 0x403b3f
mov ecx, edi
mov edx, esi
push 0x44efd8
call fcn.004468e0
jmp 0x403b3f
push 0x27
pop edx
mov ecx, str.assertion_failed:_right_node.len____0
push 0x448b80
jmp 0x403b3a
push 0x37
pop edx
mov ecx, str.assertion_failed:_left_node.height__right_node.height
push 0x448b48
jmp 0x403b3a
push 0x1f
pop edx
mov ecx, str.assertion_failed:_path.exists__C:Users_runneradmin.cargo_registry_srcindex.crates.io_6f17d22bba15001f_file_rotate_0.7.5_srccompression.rs
push 0x44f170
jmp 0x403b3a
push 0x24
pop edx
mov ecx, str.assertion_failed:_dest_path.exists__
push 0x44f1a4
jmp 0x403b3a
push 0x33
pop edx
mov ecx, str.assertion_failed:_old_right_len__count___CAPACITY
push 0x4517b4
jmp 0x403b3a
push 0x32
pop edx
mov ecx, str.assertion_failed:_old_left_len__count___CAPACITY
push 0x451868
call fcn.00446a30
pop eax
ud2
push 0x2b
pop edx
mov ecx, str.called__Option::unwrap____on_a__None__value_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112librarycore_srcio_borrowed_buf.rs_rustc_82e1608dfa6e0b5569232559e3d385fea5a93112library_alloc_srccollections_btree_navigate.rs
push 0x448ae0
jmp 0x403b3a
push 4
pop ecx
push 0x20
pop edx
call fcn.00446790
ud2