Function at 0x43cce0
Capabilities:
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
sub esp, 0x230
mov esi, dword [ebp + 8]
mov eax, dword [0x540010]
xor eax, ebp
mov dword [ebp - 0x10], eax
xor ebx, ebx
dec ebx
mov dword [esi], ebx
mov dword [esi + 4], ebx
mov dword [esi + 8], ebx
xor edx, edx
inc edx
mov ecx, esi
call fcn.0043cff0
movzx eax, byte [esi + 0xb]
test al, al
jns 0x43cd19
mov eax, dword [esi + 4]
test eax, eax
jne 0x43cf22
lea edi, [ebp - 0x224]
mov dword [edi + 8], ebx
mov dword [edi + 4], ebx
mov dword [edi], ebx
mov ecx, edi
call fcn.00493db0
push edi
push 0x67
call fcn.00480b30
add esp, 8
test al, al
je 0x43cd6b
movzx eax, byte [ebp - 0x219]
test al, al
jns 0x43cd56
mov eax, dword [ebp - 0x220]
test eax, eax
je 0x43cd6b
push edi
call fcn.0047e400
add esp, 4
test al, al
jne 0x43ce67
lea ecx, [ebp - 0x224]
call fcn.00493ef0
mov eax, dword [0x544994]
mov ecx, dword [0x543ad4]
mov edx, dword fs:[0x2c]
mov ecx, dword [edx + ecx*4]
cmp eax, dword [ecx + 4]
jg 0x43cf4f
mov eax, dword [0x54498c]
test eax, eax
je 0x43ce5c
mov edi, 0x54498c
lea ecx, [eax + 4]
cmp dword [eax + 0x10], 0x67
cmovge ecx, eax
cmovge edi, eax
mov eax, dword [ecx]
test eax, eax
jne 0x43cda9
cmp edi, 0x54498c
je 0x43ce5c
cmp dword [edi + 0x10], 0x67
jg 0x43ce5c
lea esi, [ebp - 0x216]
push 0x206
push 0xff
push esi
call fcn.004e3a90
add esp, 0xc
mov word [esi - 2], 0
lea esi, [ebp - 0x218]
push 0x104
push esi
push dword [edi + 0x14]
call dword [sym.imp.KERNEL32.dll_GetEnvironmentVariableW]
dec eax
cmp eax, 0x102
ja 0x43ce5c
lea edi, [ebp - 0x224]
mov dword [edi], ebx
mov dword [edi + 4], ebx
mov dword [edi + 8], ebx
push esi
call fcn.004fbc1b
add esp, 4
mov ecx, edi
push eax
push esi
call fcn.00493e00
mov ecx, edi
call fcn.004959c0
test al, al
je 0x43ce51
mov ecx, edi
call fcn.00495ab0
test al, al
jne 0x43ce51
push edi
call fcn.0047e400
add esp, 4
test al, al
jne 0x43ce67
lea ecx, [ebp - 0x224]
call fcn.00493ef0
lea ecx, [ebp - 0x224]
call fcn.00493db0
movzx eax, byte [ebp - 0x219]
test al, al
jns 0x43ce78
mov eax, dword [ebp - 0x220]
test eax, eax
je 0x43cfde
lea edi, [ebp - 0x230]
push edi
call fcn.004a3fa0
add esp, 4
movzx eax, byte [edi + 0xb]
test al, al
jns 0x43cea3
mov eax, dword [ebp - 0x22c]
mov edi, dword [ebp - 0x230]
test eax, eax
js 0x43cf40
je 0x43ceb5
test edi, edi
je 0x43cf39
lea ebx, [ebp - 0x218]
lea ecx, [ebp - 0x224]
push eax
push edi
push ebx
call fcn.00494d30
mov esi, str.Application
push esi
call fcn.004fbc1b
add esp, 4
lea edi, [ebp - 0x23c]
mov ecx, ebx
push eax
push esi
push edi
call fcn.00494d30
mov ecx, ebx
call fcn.00493ef0
cmp byte [ebp - 0x225], 0
jns 0x43cf05
push dword [ebp - 0x230]
call fcn.004dfb35
add esp, 4
lea ecx, [ebp - 0x224]
call fcn.00493ef0
mov esi, dword [ebp + 8]
mov ecx, esi
push edi
call fcn.00493f70
mov ecx, edi
call fcn.00493ef0
mov ecx, dword [ebp - 0x10]
xor ecx, ebp
call fcn.004e0685
mov eax, esi
add esp, 0x230
pop esi
pop edi
pop ebx
pop ebp
ret
push str....._third_partylibc_srcinclude_string_view:313:_assertion___len__0____s___nullptr_failed:_string_view::string_view__CharT___size_t_:_received_nullptr_n
jmp 0x43cf45
push str....._third_partylibc_srcinclude_string_view:311:_assertion___len___static_cast_size_type__numeric_limits_difference_type_::max____failed:_string_view::string_view__CharT___size_t_:_length_does_not_fit_in_difference_type_n
push 0x521354
call fcn.0044d640
push 0x544994
call fcn.004dfba7
add esp, 4
cmp dword [0x544994], 0xffffffff
jne 0x43cd97
xor eax, eax
mov dword [0x54498c], eax
mov dword [0x544990], eax
mov edi, 0x54498c
mov dword [0x544988], edi
mov eax, 0x524d18
lea esi, [ebp - 0x218]
mov ecx, 0x544988
push eax
push eax
push edi
push esi
call fcn.0043e6d0
mov eax, 0x524d24
mov ecx, 0x544988
push eax
push eax
push edi
push esi
call fcn.0043e6d0
mov eax, 0x524d30
mov ecx, 0x544988
push eax
push eax
push edi
push esi
call fcn.0043e6d0
push 0x43e6b0
call fcn.004dfe11
add esp, 4
push 0x544994
call fcn.004dfc1d
add esp, 4
jmp 0x43cd97
int3