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

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x100
mov eax, dword [ebp + 8]
mov edi, ecx
lea ecx, [esp + 0xa8]
mov dword [esp + 0xa8], 0
mov dword [esp + 0xac], eax
mov dword [esp + 0xb0], edx
mov dword [esp + 0xb4], eax
mov dword [esp + 0xb8], 0
mov dword [esp + 0xbc], eax
mov dword [esp + 0xc0], 0x7b
mov dword [esp + 0xc4], 1
mov dword [esp + 0xc8], 0x7b
mov word [esp + 0xcc], 1
call fcn.0043b360
test eax, eax
je 0x43a138
mov esi, edx
mov edx, eax
mov ecx, edi
push esi
call fcn.00439fd0
add esp, 4
cmp al, 4
jne 0x43b1b9
movsd xmm2, qword [esp + 0xc0]
movsd xmm1, qword [esp + 0xb8]
movq xmm0, qword [esp + 0xc8]
mov dword [esp], edi
movsd qword [esp + 0xe8], xmm2
movsd qword [esp + 0xe0], xmm1
movsd xmm2, qword [esp + 0xa8]
movq xmm1, qword [esp + 0xb0]
movq qword [esp + 0xf0], xmm0
movq qword [esp + 0xd8], xmm1
movsd qword [esp + 0xd0], xmm2
jmp 0x43a1b4
jne 0x43b28d
add edx, 4
add eax, 0xfffffffc
push eax
call fcn.00439fd0
add esp, 4
cmp al, 4
jne 0x43b1b9
lea ecx, [esp + 0xd0]
call fcn.0043b360
test eax, eax
je 0x43b1c6
mov edi, eax
mov esi, edx
cmp edx, 4
jae 0x43a200
mov ebx, dword [esp]
mov edx, 0x6d18a2
mov ecx, ebx
push 1
call fcn.00439fd0
add esp, 4
cmp al, 4
jne 0x43b1b9
mov ecx, ebx
mov edx, edi
push esi
jmp 0x43a1a4
cmp dword [edi], 0x7d6e6962
je 0x43a23a
cmp esi, 8
jae 0x43a307
cmp esi, 7
jne 0x43a354
mov eax, dword [edi]
mov ebx, dword [edi + 3]
mov ecx, 0x68747561
mov edx, 0x7d726f68
xor eax, ecx
xor ebx, edx
or ebx, eax
jne 0x43a822
jmp 0x43a3d6
mov ebx, dword [esp]
mov dword [esp + 0x28], edi
mov dword [esp + 4], esi
mov edi, dword [ebx + 0xc]
mov esi, dword [edi]
mov edx, dword [esi + 0x50]
test edx, edx
je 0x43a362
mov eax, dword [esi + 0x58]
cmp eax, 8
jae 0x43a432
test eax, eax
je 0x43a27f
xor ecx, ecx
nop word [eax + eax]
cmp byte [edx + ecx], 0x20
je 0x43ab99
inc ecx
cmp eax, ecx
jne 0x43a270
xor eax, eax
cmp eax, 1
je 0x43a449
mov eax, dword [edi]
mov edi, dword [esp]
lea ecx, [esp + 0x14]
mov edx, dword [eax + 0x38]
push dword [edi + 0x10]
push dword [eax + 0x40]
call fcn.0043b4d0
add esp, 8
cmp dword [edi], 1
je 0x43a382
mov ecx, edi
mov edi, dword [esp + 0x14]
mov eax, dword [ecx + 8]
push dword [esp + 0x1c]
push edi
push dword [ecx + 4]
call dword [eax + 0x1c]
add esp, 0xc
cmp al, 4
jne 0x43b1de
cmp dword [esp + 0x18], 0
je 0x43a2e4
push dword [esp + 0x14]
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov eax, dword [esp + 4]
mov ecx, dword [esp]
mov edx, dword [esp + 0x28]
cmp eax, 4
jbe 0x43a197
cmp byte [edx + 4], 0xbf
jg 0x43a19d
jmp 0x43b28d
mov eax, dword [edi]
mov ebx, dword [edi + 4]
mov ecx, 0x73726576
mov edx, 0x7d6e6f69
xor eax, ecx
xor ebx, edx
or ebx, eax
je 0x43a75d
mov eax, dword [edi]
mov ebx, dword [edi + 3]
mov ecx, 0x68747561
mov edx, 0x7d726f68
xor eax, ecx
xor ebx, edx
or ebx, eax
je 0x43a3d6
cmp esi, 0x14
jae 0x43a7de
cmp esi, 0xf
jae 0x43a80a
jmp 0x43a822
cmp esi, 6
jb 0x43a1d1
jmp 0x43a822
mov edx, dword [esi + 0x38]
lea ecx, [esp + 0x14]
push dword [ebx + 0x10]
push dword [esi + 0x40]
call fcn.0043b4d0
add esp, 8
mov edi, ebx
cmp dword [edi], 1
jne 0x43a2ad
mov esi, dword [esp + 0x1c]
test esi, esi
js 0x43b2a3
mov edi, dword [edi + 4]
mov ecx, dword [esp + 0x14]
je 0x43a794
mov eax, dword [0x6f1130]
mov dword [esp + 0x10], ecx
test eax, eax
jne 0x43a3ba
call sub.KERNEL32.dll_GetProcessHeap
test eax, eax
je 0x43b2aa
mov dword [0x6f1130], eax
push esi
push 0
push eax
call sub.KERNEL32.dll_HeapAlloc
mov ecx, dword [esp + 0x10]
mov ebx, eax
test eax, eax
jne 0x43a799
jmp 0x43b2aa
mov ebx, dword [esp]
mov dword [esp + 0x28], edi
mov edi, esi
mov eax, dword [ebx + 0xc]
mov eax, dword [eax]
mov edx, dword [eax + 0x5c]
test edx, edx
je 0x43a410
lea esi, [esp + 0x68]
mov ecx, esi
push dword [ebx + 0x10]
push dword [eax + 0x60]
call fcn.0043b4d0
add esp, 8
mov ecx, ebx
mov edx, esi
call fcn.0043b700
cmp al, 4
jne 0x43b1b9
mov edx, dword [esp + 0x28]
cmp edi, 8
jb 0x43a423
cmp byte [edx + 7], 0xbf
jle 0x43b2b8
mov ecx, dword [esp]
add edx, 7
add edi, 0xfffffff9
push edi
jmp 0x43a1a4
mov ecx, 0x20
push eax
call fcn.0045f4f0
add esp, 4
cmp eax, 1
jne 0x43a28a
mov edx, dword [esi + 0x50]
mov eax, dword [esi + 0x58]
mov esi, dword [0x6dd4e0]
lea ecx, [esp + 0x68]
mov dword [esp + 0x14], esi
mov dword [esp + 0x18], 0
mov dword [esp + 0x1c], 0
mov dword [esp + 0x40], edx
push 1
push 0x6d8f38
mov dword [esp + 0x60], eax
push eax
call fcn.0045fa60
add esp, 0xc
mov edx, dword [esp + 0x9c]
mov eax, dword [esp + 0x74]
mov ebx, dword [esp + 0x98]
cmp dword [esp + 0x68], 1
mov dword [esp + 0x20], edx
jne 0x43a931
mov dword [esp + 0x2c], eax
mov eax, dword [esp + 0xa4]
mov edi, dword [esp + 0x84]
mov dword [esp + 8], 0
mov dword [esp + 0x24], esi
lea ecx, [eax - 1]
mov dword [esp + 0x38], eax
mov eax, ecx
lea eax, [ecx + edi]
mov dword [esp + 0x48], ecx
mov ecx, 0
cmp eax, edx
jae 0x43ae73
mov ecx, dword [esp + 0x70]
mov edx, dword [esp + 0x80]
mov esi, dword [esp + 0x38]
mov dword [esp + 8], 0
mov dword [esp + 0x10], ebx
mov dword [esp + 0x64], ecx
mov ecx, dword [esp + 0x78]
sub esi, edx
mov dword [esp + 0x54], edx
mov edx, dword [0x6dd4e0]
mov dword [esp + 0x50], esi
mov dword [esp + 0x44], ecx
neg ecx
mov dword [esp + 0x24], edx
mov dword [esp + 0x5c], ecx
mov ecx, dword [esp + 0xa0]
mov dword [esp + 0x4c], ecx
mov ecx, dword [esp + 0x8c]
mov dword [esp + 0x30], ecx
xor ecx, ecx
mov edx, dword [esp + 0x30]
mov dword [esp + 0x3c], ecx
mov ecx, edi
mov edi, dword [esp + 0x20]
xor esi, esi
mov dword [esp + 0x34], edx
jmp 0x43a578
mov ecx, dword [esp + 0xc]
xor eax, eax
add ecx, dword [esp + 0x38]
cmp dword [esp + 0x34], 0xffffffff
je 0x43a565
mov dword [esp + 0x30], eax
mov eax, dword [esp + 0x48]
mov esi, 0
add eax, ecx
cmp eax, edi
jae 0x43ae6f
mov dword [esp + 0xc], ecx
mov cl, byte [ebx + eax]
xor eax, eax
mov edx, 1
shld eax, edx, cl
mov edx, 1
shl edx, cl
test cl, 0x20
cmovne eax, edx
cmovne edx, esi
and eax, dword [esp + 0x2c]
and edx, dword [esp + 0x64]
or edx, eax
je 0x43a550
mov eax, dword [esp + 0x44]
mov ecx, dword [esp + 0x30]
xor esi, esi
mov edi, dword [esp + 0x38]
cmp eax, ecx
cmova ecx, eax
cmp dword [esp + 0x34], 0xffffffff
cmove ecx, eax
mov eax, dword [esp + 0xc]
sub edi, ecx
mov dword [esp + 0x60], ecx
cmovb edi, esi
lea edx, [ecx + eax]
mov eax, dword [esp + 0x4c]
add eax, ecx
nop word cs:[eax + eax]
sub edi, 1
jb 0x43a620
cmp edx, dword [esp + 0x20]
jae 0x43b20c
movzx ebx, byte [eax]
mov esi, dword [esp + 0x10]
inc eax
lea ecx, [edx + 1]
cmp bl, byte [esi + edx]
mov ebx, dword [esp + 0x10]
mov edx, ecx
je 0x43a5e0
add ecx, dword [esp + 0x5c]
cmp dword [esp + 0x34], 0xffffffff
mov edi, dword [esp + 0x20]
je 0x43a565
xor eax, eax
jmp 0x43a561
cmp dword [esp + 0x34], 0xffffffff
mov edx, dword [esp + 0x30]
mov ecx, dword [esp + 0x44]
mov edi, dword [esp + 0x20]
mov eax, 0
cmove edx, eax
nop dword [eax]
cmp edx, ecx
jae 0x43a690
dec ecx
cmp ecx, dword [esp + 0x38]
jae 0x43b224
mov eax, dword [esp + 0xc]
add eax, ecx
cmp eax, edi
jae 0x43b22f
mov esi, dword [esp + 0x4c]
movzx ebx, byte [esi + ecx]
mov esi, dword [esp + 0x10]
cmp bl, byte [esi + eax]
mov ebx, dword [esp + 0x10]
je 0x43a640
mov ecx, dword [esp + 0xc]
mov eax, dword [esp + 0x50]
add ecx, dword [esp + 0x54]
cmp dword [esp + 0x34], 0xffffffff
jne 0x43a561
jmp 0x43a565
cmp dword [esp + 0x34], 0xffffffff
mov eax, dword [esp + 0x30]
mov ecx, 0
mov edx, dword [esp + 0x40]
mov esi, dword [esp + 0xc]
cmovne eax, ecx
mov ecx, dword [esp + 0x3c]
lea edi, [edx + esi]
mov dword [esp + 0x30], eax
add ecx, edx
mov dword [esp + 0x3c], ecx
sub edi, ecx
mov ecx, dword [esp + 0x18]
sub ecx, dword [esp + 8]
cmp ecx, edi
jb 0x43a726
mov ecx, dword [esp + 0x24]
add esi, dword [esp + 0x38]
mov ebx, dword [esp + 8]
add ecx, ebx
push edi
push dword [esp + 0x40]
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add ebx, edi
mov dword [esp + 0x1c], ebx
mov edx, ebx
cmp dword [esp + 0x18], ebx
je 0x43a749
mov eax, dword [esp + 0x14]
mov edi, dword [esp + 0x20]
mov ebx, dword [esp + 0x10]
mov ecx, esi
mov byte [eax + edx], 0x2d
mov dword [esp + 0x24], eax
mov eax, dword [esp + 0x48]
inc edx
mov dword [esp + 8], edx
mov dword [esp + 0x1c], edx
add eax, esi
cmp eax, edi
mov edi, esi
jb 0x43a53a
jmp 0x43ae73
mov edx, dword [esp + 8]
lea ecx, [esp + 0x14]
push edi
call fcn.005f2340
mov esi, dword [esp + 0x10]
add esp, 4
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov dword [esp + 8], eax
jmp 0x43a6cc
lea ecx, [esp + 0x14]
push 1
call fcn.005f2340
add esp, 4
mov edx, dword [esp + 0x1c]
jmp 0x43a6f2
mov eax, dword [esp]
mov dword [esp + 4], esi
cmp byte [eax + 0x16], 0
mov eax, dword [eax + 0xc]
mov ecx, dword [eax]
je 0x43ab4b
mov edx, dword [ecx + 0x6c]
lea eax, [ecx + 0x70]
lea esi, [ecx + 0x68]
test edx, edx
cmove eax, esi
cmove edx, dword [ecx + 0x64]
mov eax, dword [eax]
test edx, edx
jne 0x43ab55
jmp 0x43ab7b
mov ebx, 1
push esi
push ecx
push ebx
call sub.msvcrt.dll_memcpy
add esp, 0xc
mov edx, dword [edi + 8]
cmp edx, dword [edi + 4]
jne 0x43a7b6
mov ecx, edi
call fcn.00415ce0
mov edx, dword [edi + 8]
mov eax, dword [edi]
shl edx, 4
mov dword [eax + edx], ebx
mov dword [eax + edx + 4], esi
mov dword [eax + edx + 8], esi
mov byte [eax + edx + 0xc], 2
inc dword [edi + 8]
cmp dword [esp + 0x18], 0
jne 0x43a2d3
jmp 0x43a2e4
movdqu xmm0, xmmword [edi]
movd xmm1, dword [edi + 0x10]
pcmpeqb xmm0, xmmword [str.author_with_newlut_with_newlineabout_with_newliuespemosarenegylmodnarodsetybdet]
pcmpeqb xmm1, xmmword [0x606340]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x43ad68
push 0xf
push edi
push 0x60af6b
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x43acd2
movzx edx, word [edi + 4]
mov eax, dword [edi]
mov ecx, 0x756f6261
xor eax, ecx
xor edx, 0x7d74
or edx, eax
je 0x43a848
cmp esi, 0x13
jae 0x43a888
cmp esi, 0xe
jae 0x43a8b4
jmp 0x43a8e4
mov eax, dword [esp]
mov dword [esp + 4], esi
cmp byte [eax + 0x16], 0
mov eax, dword [eax + 0xc]
mov ecx, dword [eax]
je 0x43abac
mov edx, dword [ecx + 0x84]
lea eax, [ecx + 0x88]
lea esi, [ecx + 0x80]
test edx, edx
cmove eax, esi
cmove edx, dword [ecx + 0x7c]
mov eax, dword [eax]
test edx, edx
jne 0x43abb9
jmp 0x43abdf
movdqu xmm0, xmmword [edi]
movdqu xmm1, xmmword [edi + 3]
pcmpeqb xmm0, xmmword [0x606370]
pcmpeqb xmm1, xmmword [0x606360]
pand xmm1, xmm0
pmovmskb eax, xmm1
cmp eax, 0xffff
je 0x43ac3d
push 0xe
push edi
push 0x60af93
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x43abfd
push 0xe
push edi
push 0x60afa1
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x43ae42
movzx edx, word [edi + 4]
mov eax, dword [edi]
mov ecx, 0x67617375
xor eax, ecx
xor edx, 0x7d65
or edx, eax
je 0x43ac81
cmp esi, 9
jae 0x43adda
cmp esi, 8
jb 0x43a1d1
mov eax, dword [edi]
mov ebx, dword [edi + 4]
mov ecx, 0x6974706f
mov edx, 0x7d736e6f
xor eax, ecx
xor ebx, edx
or ebx, eax
jne 0x43a1d1
jmp 0x43afc4
test eax, 0xff0000
mov ecx, 0
mov dword [esp + 8], 0
mov dword [esp + 0x24], esi
jne 0x43ae73
mov ecx, dword [0x6dd4e0]
mov edi, dword [esp + 0x6c]
mov edx, eax
mov dword [esp + 0xc], 0
mov dword [esp + 8], 0
mov dword [esp + 0x24], ecx
test edi, edi
jne 0x43a988
jmp 0x43a9a6
add edi, ecx
mov dl, 1
test edi, edi
je 0x43a9a6
cmp dword [esp + 0x20], edi
jbe 0x43a9a0
cmp byte [ebx + edi], 0xbf
jg 0x43a9a6
jmp 0x43b276
jne 0x43b276
cmp edi, dword [esp + 0x20]
je 0x43aa82
movzx eax, byte [ebx + edi]
test al, al
js 0x43aa00
test dl, dl
jne 0x43aa78
cmp eax, 0x110000
je 0x43ae3c
mov ecx, 1
cmp eax, 0x80
jb 0x43a980
mov ecx, 2
cmp eax, 0x800
jb 0x43a980
cmp eax, 0x10000
mov ecx, 4
sbb ecx, 0
jmp 0x43a980
mov esi, ebx
movzx ebx, byte [ebx + edi + 1]
mov ecx, eax
and ecx, 0x1f
and ebx, 0x3f
cmp al, 0xdf
jbe 0x43aa50
mov dword [esp + 0x2c], edx
movzx edx, byte [esi + edi + 2]
shl ebx, 6
and edx, 0x3f
or edx, ebx
cmp al, 0xf0
jb 0x43aa63
movzx eax, byte [esi + edi + 3]
and ecx, 7
shl edx, 6
shl ecx, 0x12
and eax, 0x3f
or eax, edx
or eax, ecx
mov edx, dword [esp + 0x2c]
mov ebx, esi
test dl, dl
je 0x43a9c0
jmp 0x43aa78
shl ecx, 6
or ecx, ebx
mov ebx, esi
mov eax, ecx
test dl, dl
je 0x43a9c0
jmp 0x43aa78
shl ecx, 0xc
or edx, ecx
mov eax, edx
mov edx, dword [esp + 0x2c]
mov ebx, esi
test dl, dl
je 0x43a9c0
mov ecx, dword [esp + 0xc]
mov dword [esp + 0x2c], edx
jmp 0x43aa9e
test dl, dl
je 0x43ae3c
mov edi, dword [esp + 0x20]
mov ecx, dword [esp + 0xc]
test ebx, ebx
mov dword [esp + 0x2c], edx
je 0x43ae73
mov esi, dword [esp + 0x18]
mov eax, dword [esp + 0x40]
sub esi, dword [esp + 8]
add ecx, eax
lea edx, [eax + edi]
sub edx, ecx
mov dword [esp + 0x10], edx
cmp esi, edx
mov edx, ecx
jb 0x43ab11
mov ecx, dword [esp + 0x24]
mov esi, dword [esp + 8]
add ecx, esi
push dword [esp + 0x10]
push edx
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add esi, dword [esp + 0x10]
mov dword [esp + 0x1c], esi
mov edx, esi
cmp dword [esp + 0x18], esi
je 0x43ab37
mov eax, dword [esp + 0x2c]
mov ecx, dword [esp + 0x14]
mov dword [esp + 0xc], edi
mov byte [ecx + edx], 0x2d
inc edx
xor al, 1
mov dword [esp + 0x24], ecx
mov dword [esp + 8], edx
mov dword [esp + 0x1c], edx
mov edx, eax
test edi, edi
jne 0x43a988
jmp 0x43a9a6
mov esi, edx
mov edx, dword [esp + 8]
lea ecx, [esp + 0x14]
push dword [esp + 0x10]
call fcn.005f2340
mov edx, esi
add esp, 4
mov ecx, dword [esp + 0x14]
mov eax, dword [esp + 0x1c]
mov dword [esp + 8], eax
jmp 0x43aabf
lea ecx, [esp + 0x14]
push 1
call fcn.005f2340
add esp, 4
mov edx, dword [esp + 0x1c]
jmp 0x43aae3
mov edx, dword [ecx + 0x64]
mov eax, dword [ecx + 0x68]
test edx, edx
je 0x43ab7b
mov ebx, dword [esp]
lea esi, [esp + 0x68]
mov ecx, esi
push dword [ebx + 0x10]
push eax
call fcn.0043b4d0
add esp, 8
mov ecx, ebx
mov edx, esi
call fcn.0043b700
cmp al, 4
jne 0x43b1b9
mov eax, dword [esp + 4]
cmp eax, 9
jb 0x43ab8e
cmp byte [edi + 8], 0xbf
jle 0x43b2ce
add edi, 8
add eax, 0xfffffff8
jmp 0x43af49
mov eax, 1
cmp eax, 1
je 0x43a449
jmp 0x43a28a
mov edx, dword [ecx + 0x7c]
mov eax, dword [ecx + 0x80]
test edx, edx
je 0x43abdf
mov ebx, dword [esp]
lea esi, [esp + 0x68]
mov ecx, esi
push dword [ebx + 0x10]
push eax
call fcn.0043b4d0
add esp, 8
mov ecx, ebx
mov edx, esi
call fcn.0043b700
cmp al, 4
jne 0x43b1b9
mov eax, dword [esp + 4]
cmp eax, 7
jb 0x43abf2
cmp byte [edi + 6], 0xbf
jle 0x43b2e4
add edi, 6
add eax, 0xfffffffa
jmp 0x43af49
mov eax, dword [esp]
mov dword [esp + 4], esi
cmp byte [eax + 0x16], 0
mov eax, dword [eax + 0xc]
mov eax, dword [eax]
je 0x43aebf
mov esi, dword [eax + 0x84]
lea ecx, [eax + 0x88]
lea edx, [eax + 0x80]
test esi, esi
cmove ecx, edx
cmove esi, dword [eax + 0x7c]
mov ebx, dword [ecx]
test esi, esi
jne 0x43aecc
jmp 0x43af30
mov eax, dword [esp]
cmp byte [eax + 0x16], 0
mov eax, dword [eax + 0xc]
mov ecx, dword [eax]
je 0x43af53
mov edx, dword [ecx + 0x84]
mov ebx, edi
mov edi, esi
lea eax, [ecx + 0x88]
lea esi, [ecx + 0x80]
test edx, edx
cmove eax, esi
cmove edx, dword [ecx + 0x7c]
mov esi, edi
mov edi, ebx
mov eax, dword [eax]
test edx, edx
jne 0x43af60
jmp 0x43afa7
mov ebx, dword [esp]
mov dword [esp + 4], esi
lea esi, [esp + 0x68]
lea edx, [esp + 0x14]
mov ecx, esi
mov eax, dword [ebx + 0xc]
mov dword [esp + 0x14], eax
push 0
push str._cargo_registry_src_github.com_1ecc6299db9ec823_utfx_0.1.0_src_ucstr.rs
call fcn.0041f700
add esp, 8
mov ecx, ebx
mov edx, esi
call fcn.0043b700
cmp al, 4
jne 0x43b1b9
mov edx, dword [esp + 4]
mov ecx, edi
push 6
call fcn.0043b870
add esp, 4
mov esi, edx
mov ecx, ebx
jmp 0x43b038
mov ecx, dword [esp]
mov eax, dword [ecx + 0xc]
mov eax, dword [eax]
mov ebx, dword [eax + 0x5c]
test ebx, ebx
je 0x43ad4b
mov dword [esp + 4], esi
mov esi, dword [eax + 0x60]
mov dword [esp + 0x28], edi
mov edi, ecx
mov edx, 0x6dd4f8
push 1
call fcn.00439fd0
add esp, 4
cmp al, 4
jne 0x43b1ff
mov edx, ebx
lea ebx, [esp + 0x68]
mov ecx, ebx
push dword [edi + 0x10]
push esi
call fcn.0043b4d0
add esp, 8
mov ecx, edi
mov edx, ebx
call fcn.0043b700
cmp al, 4
jne 0x43b1ff
mov edx, 0x6dd4f8
mov ecx, edi
push 1
call fcn.00439fd0
add esp, 4
mov esi, dword [esp + 4]
mov edi, dword [esp + 0x28]
cmp al, 4
jne 0x43b1ff
cmp esi, 0x10
jb 0x43ad5a
cmp byte [edi + 0xf], 0xbf
jle 0x43b326
mov ecx, dword [esp]
add edi, 0xf
add esi, 0xfffffff1
jmp 0x43a1ef
mov ebx, dword [esp]
mov eax, dword [ebx + 0xc]
mov eax, dword [eax]
mov edx, dword [eax + 0x5c]
test edx, edx
je 0x43adbd
mov dword [esp + 4], esi
lea esi, [esp + 0x68]
mov ecx, esi
push dword [ebx + 0x10]
push dword [eax + 0x60]
call fcn.0043b4d0
add esp, 8
mov ecx, ebx
mov edx, esi
call fcn.0043b700
cmp al, 4
jne 0x43b1ff
mov edx, 0x6dd4f8
mov ecx, ebx
push 1
call fcn.00439fd0
add esp, 4
mov esi, dword [esp + 4]
cmp al, 4
jne 0x43b1ff
cmp esi, 0x15
jb 0x43adcc
cmp byte [edi + 0x14], 0xbf
jle 0x43b33c
mov ecx, dword [esp]
add edi, 0x14
add esi, 0xffffffec
jmp 0x43a1ef
push 9
push edi
push 0x60afb5
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x43b040
mov eax, dword [edi]
mov ebx, dword [edi + 4]
mov ecx, 0x6974706f
mov edx, 0x7d736e6f
xor eax, ecx
xor ebx, edx
or ebx, eax
je 0x43afc4
cmp esi, 0xc
jae 0x43b09b
cmp esi, 0xb
jne 0x43a1d1
push 0xb
push edi
push 0x60afde
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x43a1d1
jmp 0x43b176
mov ecx, dword [esp + 0xc]
jmp 0x43ae73
mov dword [esp + 4], esi
mov esi, dword [esp]
mov edx, 0x60b27a
mov ecx, esi
push 6
call fcn.0043b7a0
add esp, 4
cmp al, 4
jne 0x43b1b9
mov edx, dword [esp + 4]
mov ecx, edi
push 0xe
jmp 0x43b05e
mov ecx, dword [esp + 0x3c]
mov edx, dword [esp + 0x18]
mov eax, dword [esp + 0x40]
mov esi, dword [esp + 0x58]
sub edx, dword [esp + 8]
add ecx, eax
add esi, eax
sub esi, ecx
cmp edx, esi
mov edx, ecx
jb 0x43b072
mov edi, dword [esp]
mov ecx, dword [esp + 0x24]
mov ebx, dword [esp + 8]
add ecx, ebx
push esi
push edx
push ecx
call sub.msvcrt.dll_memcpy
add esp, 0xc
add ebx, esi
mov dword [esp + 0x1c], ebx
cmp dword [edi], 1
je 0x43a382
jmp 0x43a2ad
mov esi, dword [eax + 0x7c]
mov ebx, dword [eax + 0x80]
test esi, esi
je 0x43af30
mov dword [esp + 0x28], edi
mov edi, dword [esp]
mov edx, 0x6dd4f8
mov ecx, edi
push 1
call fcn.00439fd0
add esp, 4
cmp al, 4
jne 0x43b1ff
mov eax, ebx
lea ebx, [esp + 0x68]
mov edx, esi
mov ecx, ebx
push dword [edi + 0x10]
push eax
call fcn.0043b4d0
add esp, 8
mov ecx, edi
mov edx, ebx
call fcn.0043b700
cmp al, 4
jne 0x43b1ff
mov edx, 0x6dd4f8
mov ecx, edi
push 1
call fcn.00439fd0
add esp, 4
mov edi, dword [esp + 0x28]
cmp al, 4
jne 0x43b1ff
mov eax, dword [esp + 4]
cmp eax, 0xf
jb 0x43af43
cmp byte [edi + 0xe], 0xbf
jle 0x43b2fa
add edi, 0xe
add eax, 0xfffffff2
mov ecx, dword [esp]
mov edx, edi
jmp 0x43a1a3
mov edx, dword [ecx + 0x7c]
mov eax, dword [ecx + 0x80]
test edx, edx
je 0x43afa7
mov dword [esp + 4], esi
mov esi, dword [esp]
lea ebx, [esp + 0x68]
mov ecx, ebx
push dword [esi + 0x10]
push eax
call fcn.0043b4d0
add esp, 8
mov ecx, esi
mov edx, ebx
call fcn.0043b700
cmp al, 4
jne 0x43b1ff
mov edx, 0x6dd4f8
mov ecx, esi
push 1
call fcn.00439fd0
add esp, 4
mov esi, dword [esp + 4]
cmp al, 4
jne 0x43b1ff
cmp esi, 0x14
jb 0x43afb6
cmp byte [edi + 0x13], 0xbf
jle 0x43b310
mov ecx, dword [esp]
add edi, 0x13
add esi, 0xffffffed
jmp 0x43a1ef
mov dword [esp + 4], esi
mov esi, dword [esp]
lea ecx, [esp + 0x68]
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov edx, dword [eax + 0x108]
imul eax, dword [eax + 0x110], 0x148
add eax, edx
push eax
call fcn.00428160
add esp, 4
mov ebx, dword [esp + 0x68]
mov ecx, esi
mov edx, ebx
push dword [esp + 0x70]
call fcn.0043cf10
add esp, 4
cmp al, 4
jne 0x43b242
test dword [esp + 0x6c], 0x3fffffff
je 0x43b023
push ebx
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov edx, dword [esp + 4]
mov ecx, edi
push 8
call fcn.0043b870
add esp, 4
mov ecx, dword [esp]
mov esi, edx
mov edx, eax
push esi
jmp 0x43a1a4
mov dword [esp + 4], esi
mov esi, dword [esp]
mov ecx, esi
call fcn.0043b8a0
cmp al, 4
jne 0x43b1b9
mov edx, dword [esp + 4]
mov ecx, edi
push 9
call fcn.0043b870
add esp, 4
mov edi, edx
mov ecx, esi
mov edx, eax
push edi
jmp 0x43a1a4
mov edi, edx
mov edx, dword [esp + 8]
lea ecx, [esp + 0x14]
push esi
call fcn.005f2340
mov edx, edi
add esp, 4
mov eax, dword [esp + 0x1c]
mov ecx, dword [esp + 0x14]
mov edi, dword [esp]
mov dword [esp + 8], eax
jmp 0x43ae9a
push 0xc
push edi
push 0x60afc6
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x43b10a
push 0xc
push edi
push 0x60afd2
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x43b195
push 0xb
push edi
push 0x60afde
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
je 0x43b176
push 0xc
push edi
push 0x60afe9
call sub.msvcrt.dll_memcmp
add esp, 0xc
test eax, eax
jne 0x43a1d1
mov dword [esp + 4], esi
mov esi, dword [esp]
mov ecx, esi
call fcn.004422d0
jmp 0x43b1a8
mov dword [esp + 4], esi
mov esi, dword [esp]
lea ecx, [esp + 0x68]
mov eax, dword [esi + 0xc]
mov eax, dword [eax]
mov edx, dword [eax + 0x108]
imul eax, dword [eax + 0x110], 0x148
add eax, edx
push eax
call fcn.0042ae80
add esp, 4
mov ebx, dword [esp + 0x68]
mov ecx, esi
mov edx, ebx
push dword [esp + 0x70]
call fcn.0043cf10
add esp, 4
cmp al, 4
jne 0x43b242
test dword [esp + 0x6c], 0x3fffffff
je 0x43b169
push ebx
push 0
push dword [0x6f1130]
call sub.KERNEL32.dll_HeapFree
mov edx, dword [esp + 4]
mov ecx, edi
push 0xc
jmp 0x43b02b
mov dword [esp + 4], esi
mov esi, dword [esp]
mov ecx, esi
call fcn.00442220
cmp al, 4
jne 0x43b1b9
mov edx, dword [esp + 4]
mov ecx, edi
push 0xb
jmp 0x43b05e
mov dword [esp + 4], esi
mov esi, dword [esp]
mov eax, dword [esi + 0xc]
mov ecx, esi
mov edx, dword [eax]
call fcn.0043ea10
cmp al, 4
jne 0x43b1b9
mov edx, dword [esp + 4]
mov ecx, edi
push 0xc
jmp 0x43b05e
mov ecx, edx
mov edi, eax
shrd edi, ecx, 8
shr ecx, 8
jmp 0x43b1c8
mov al, 4
shld ecx, edi, 8
shl edi, 8
movzx eax, al
or eax, edi
mov edx, ecx
lea esp, [ebp - 0xc]
pop esi
pop edi
pop ebx
pop ebp
ret
cmp dword [esp + 0x18], 0
mov ecx, edx
je 0x43b1bb
push edi
push 0
push dword [0x6f1130]
mov esi, eax
mov edi, ecx
call sub.KERNEL32.dll_HeapFree
mov ecx, edi
mov eax, esi
jmp 0x43b1bb
mov ecx, edx
mov edi, eax
shr ecx, 8
shrd edi, edx, 8
jmp 0x43b1c8
mov ecx, dword [esp + 0x60]
mov edx, dword [esp + 0x20]
add ecx, dword [esp + 0xc]
cmp edx, ecx
cmova ecx, edx
push 0x6dd4b0
jmp 0x43b238
mov edx, dword [esp + 0x38]
push 0x6dd4c0
jmp 0x43b238
mov ecx, eax
mov edx, edi
push 0x6dd4d0
call fcn.0045a150
add esp, 4
ud2
mov ecx, edx
mov edi, eax
shrd edi, edx, 8
shr ecx, 8
test dword [esp + 0x6c], 0x3fffffff
je 0x43b1c8
push ebx
push 0
push dword [0x6f1130]
mov esi, eax
mov ebx, ecx
call sub.KERNEL32.dll_HeapFree
mov ecx, ebx
mov eax, esi
jmp 0x43b1c8
mov edx, dword [esp + 0x20]
mov ecx, ebx
push 0x6dd4e8
push edx
push edi
call fcn.0045d720
add esp, 0xc
ud2
mov ecx, edx
mov edx, eax
push 0x60af38
push eax
push 4
call fcn.0045d720
add esp, 0xc
ud2
call fcn.0040a620
ud2
mov ecx, esi
mov edx, 1
call fcn.0040a640
ud2
mov ecx, edx
mov edx, edi
push 0x60af38
push edi
push 7
call fcn.0045d720
add esp, 0xc
ud2
mov ecx, edi
mov edx, eax
push 0x60af38
push eax
push 8
call fcn.0045d720
add esp, 0xc
ud2
mov ecx, edi
mov edx, eax
push 0x60af38
push eax
push 6
call fcn.0045d720
add esp, 0xc
ud2
mov ecx, edi
mov edx, eax
push 0x60af38
push eax
push 0xe
call fcn.0045d720
add esp, 0xc
ud2
mov ecx, edi
mov edx, esi
push 0x60af38
push esi
push 0x13
call fcn.0045d720
add esp, 0xc
ud2
mov ecx, edi
mov edx, esi
push 0x60af38
push esi
push 0xf
call fcn.0045d720
add esp, 0xc
ud2
mov ecx, edi
mov edx, esi
push 0x60af38
push esi
push 0x14
call fcn.0045d720
add esp, 0xc
ud2