Function at 0x53f126
Capabilities:
Query environment variable

Disassembly:
push rbp
mov rbp, rsp
sub rsp, 0xa0
mov eax, dword [0x00555360]
cmp eax, 0
je 0x53f145
jmp 0x53f860
movabs rax, 0x10000
mov qword [rbp - 8], rax
movabs rax, 0
mov qword [rbp - 0x10], rax
lea rax, [0x0059071f]
mov r10, rax
mov rcx, r10
call sub.kernel32.dll_GetModuleHandleA
mov qword [rbp - 0x18], rax
mov rax, qword [rbp - 0x18]
cmp rax, 0
je 0x53f1a5
lea rax, str.InitializeCriticalSectionAndSpinCount
mov r11, rax
mov rax, qword [rbp - 0x18]
mov r10, rax
mov rcx, r10
mov rdx, r11
call sub.kernel32.dll_GetProcAddress
mov qword [rbp - 0x10], rax
mov rax, qword [rbp - 0x10]
cmp rax, 0
je 0x53f1df
mov rax, qword [rbp - 0x10]
mov ecx, 0xfa0
mov r11, rcx
lea rcx, [0x00558430]
mov r10, rcx
mov qword [rbp - 0x20], rax
mov rcx, r10
mov rdx, r11
mov r11, qword [rbp - 0x20]
call r11
jmp 0x53f1f1
lea rax, [0x00558430]
mov r10, rax
mov rcx, r10
call sub.kernel32.dll_InitializeCriticalSection
lea rax, [0x00558730]
mov r10, rax
mov rcx, r10
call sub.kernel32.dll_InitializeCriticalSection
call fcn.005410d9
call fcn.00541453
lea rax, str.GC_PRINT_VERBOSE_STATS
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
cmp rax, 0
je 0x53f239
mov eax, 2
mov dword [0x00555314], eax
jmp 0x53f260
lea rax, str.GC_PRINT_STATS
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
cmp rax, 0
je 0x53f260
mov eax, 1
mov dword [0x00555314], eax
lea rax, str.GC_DUMP_REGULARLY
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
cmp rax, 0
je 0x53f287
mov eax, 1
mov dword [0x0055531c], eax
lea rax, str.GC_FIND_LEAK
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
cmp rax, 0
je 0x53f2ae
mov eax, 1
mov dword [0x00555320], eax
lea rax, str.GC_FINDLEAK_DELAY_FREE
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
cmp rax, 0
je 0x53f2d5
mov eax, 1
mov dword [0x00555324], eax
lea rax, str.GC_ALL_INTERIOR_POINTERS
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
cmp rax, 0
je 0x53f2fc
mov eax, 1
mov dword [0x00555328], eax
lea rax, str.GC_DONT_GC
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
cmp rax, 0
je 0x53f323
mov eax, 1
mov dword [0x00555308], eax
lea rax, str.GC_PRINT_BACK_HEIGHT
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
cmp rax, 0
je 0x53f34a
mov eax, 1
mov dword [0x00555318], eax
lea rax, str.GC_NO_BLACKLIST_WARNING
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
cmp rax, 0
je 0x53f371
mov eax, 0x7fffffff
mov dword [0x00555344], eax
lea rax, str.GC_TRACE
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
mov qword [rbp - 0x28], rax
mov rax, qword [rbp - 0x28]
cmp rax, 0
je 0x53f3c4
mov rax, qword [fcn.0053fff2]
movabs rcx, 0
mov r11, rcx
lea rcx, str.GC_Warning:_Tracing_not_enabled:_Ignoring_GC_TRACE_value_n
mov r10, rcx
mov qword [rbp - 0x20], rax
mov rcx, r10
mov rdx, r11
mov r11, qword [rbp - 0x20]
call r11
lea rax, str.GC_PAUSE_TIME_TARGET
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
mov qword [rbp - 0x30], rax
mov rax, qword [rbp - 0x30]
cmp rax, 0
je 0x53f40f
mov rax, qword [rbp - 0x30]
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_atol
mov dword [rbp - 0x34], eax
mov eax, dword [rbp - 0x34]
cmp eax, 0
jle 0x53f40f
mov eax, dword [rbp - 0x34]
mov dword [0x00554d40], eax
lea rax, str.GC_FULL_FREQUENCY
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
mov qword [rbp - 0x40], rax
mov rax, qword [rbp - 0x40]
cmp rax, 0
je 0x53f45a
mov rax, qword [rbp - 0x40]
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_atoi
mov dword [rbp - 0x44], eax
mov eax, dword [rbp - 0x44]
cmp eax, 0
jle 0x53f45a
mov eax, dword [rbp - 0x44]
mov dword [0x00554d18], eax
lea rax, str.GC_LARGE_ALLOC_WARN_INTERVAL
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
mov qword [rbp - 0x50], rax
mov rax, qword [rbp - 0x50]
cmp rax, 0
je 0x53f4d9
mov rax, qword [rbp - 0x50]
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_atol
mov dword [rbp - 0x54], eax
mov eax, dword [rbp - 0x54]
cmp eax, 0
jg 0x53f4d0
mov rax, qword [fcn.0053fff2]
movabs rcx, 0
mov r11, rcx
lea rcx, str.GC_Warning:_GC_LARGE_ALLOC_WARN_INTERVAL_environment_variable_has_bad_value:_Ignoring_n
mov r10, rcx
mov qword [rbp - 0x20], rax
mov rcx, r10
mov rdx, r11
mov r11, qword [rbp - 0x20]
call r11
jmp 0x53f4d9
mov eax, dword [rbp - 0x54]
mov dword [0x00555344], eax
lea rax, str.GC_FREE_SPACE_DIVISOR
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
mov qword [rbp - 0x60], rax
mov rax, qword [rbp - 0x60]
cmp rax, 0
je 0x53f525
mov rax, qword [rbp - 0x60]
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_atoi
mov dword [rbp - 0x64], eax
mov eax, dword [rbp - 0x64]
cmp eax, 0
jle 0x53f525
mov eax, dword [rbp - 0x64]
mov qword [0x00554d38], rax
call sub.kernel32.dll_GetTickCount
mov dword [0x00582c48], eax
mov eax, dword [0x00555328]
movsxd rax, eax
cmp rax, 0
je 0x53f554
movabs rax, 0xfffffffffffffff8
mov qword [0x00554f98], rax
lea rax, [0x00582c48]
mov r11, rax
lea rax, [0x00558878]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.0053ad06
lea rax, [0x00555168]
mov r11, rax
lea rax, [0x00554f68]
mov r10, rax
mov rcx, r10
mov rdx, r11
call fcn.0053ad06
mov rax, qword [0x00555300]
cmp rax, 0
jne 0x53f5b4
call fcn.0054127c
mov qword [0x00555300], rax
jmp 0x53f5b4
call fcn.00528c75
mov eax, dword [0x00554d0c]
cmp eax, 0
jne 0x53f5e4
lea rax, str.GC_ENABLE_INCREMENTAL
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
cmp rax, 0
je 0x53f619
mov eax, dword [0x00555368]
cmp eax, 0
je 0x53f60e
mov eax, 1
mov dword [0x005553d0], eax
mov eax, 1
mov dword [0x00554d0c], eax
jmp 0x53f619
call fcn.00541d93
mov dword [0x00554d0c], eax
call fcn.00541a7d
call fcn.00527b78
call fcn.005389e5
lea rax, str.GC_INITIAL_HEAP_SIZE
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
mov qword [rbp - 0x70], rax
mov rax, qword [rbp - 0x70]
cmp rax, 0
je 0x53f699
mov rax, qword [rbp - 0x70]
mov r10, rax
mov rcx, r10
call fcn.0053f00a
mov qword [rbp - 8], rax
mov rax, qword [rbp - 8]
cmp rax, 0x10000
ja 0x53f699
mov rax, qword [fcn.0053fff2]
mov rcx, qword [rbp - 0x70]
mov r11, rcx
lea rcx, str.GC_Warning:_Bad_initial_heap_size__s___ignoring_it._n
mov r10, rcx
mov qword [rbp - 0x20], rax
mov rcx, r10
mov rdx, r11
mov r11, qword [rbp - 0x20]
call r11
lea rax, str.GC_MAXIMUM_HEAP_SIZE
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_getenv
mov qword [rbp - 0x78], rax
mov rax, qword [rbp - 0x78]
cmp rax, 0
je 0x53f73b
mov rax, qword [rbp - 0x78]
mov r10, rax
mov rcx, r10
call fcn.0053f00a
mov qword [rbp - 0x80], rax
mov rax, qword [rbp - 0x80]
mov rcx, qword [rbp - 8]
cmp rax, rcx
jae 0x53f70a
mov rax, qword [fcn.0053fff2]
mov rcx, qword [rbp - 0x78]
mov r11, rcx
lea rcx, str.GC_Warning:_Bad_maximum_heap_size__s___ignoring_it._n
mov r10, rcx
mov qword [rbp - 0x20], rax
mov rcx, r10
mov rdx, r11
mov r11, qword [rbp - 0x20]
call r11
mov rax, qword [0x00554de8]
cmp rax, 0
jne 0x53f72c
movabs rax, 2
mov qword [0x00554de8], rax
mov rax, qword [rbp - 0x80]
mov r10, rax
mov rcx, r10
call fcn.0052e9a1
mov rax, qword [rbp - 8]
shr rax, 0xc
mov r10, rax
mov rcx, r10
call fcn.0052ead9
cmp eax, 0
jne 0x53f793
lea rax, str.Cant_start_up:_not_enough_memory_n
mov r10, rax
mov rcx, r10
call fcn.0053fe44
movabs rax, 0
mov r10, rax
mov rcx, r10
mov r11, qword [0x00555380]
call r11
mov eax, 1
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_exit
mov rax, qword [0x00558880]
mov rcx, qword [rbp - 8]
add rax, rcx
mov qword [0x00558880], rax
mov eax, dword [0x00555328]
cmp eax, 0
je 0x53f7bc
call fcn.0052a19b
movabs rax, 0
mov r10, rax
mov rcx, r10
call fcn.00529f6c
call fcn.0053e514
mov eax, 1
mov dword [0x00555360], eax
call fcn.00544852
mov eax, dword [0x0055531c]
cmp eax, 0
je 0x53f80f
movabs rax, 0
mov r10, rax
mov rcx, r10
call fcn.00540828
jmp 0x53f80f
mov eax, dword [0x0055530c]
cmp eax, 0
je 0x53f82d
mov eax, dword [0x00554d0c]
cmp eax, 0
je 0x53f83f
lea rax, [0x0052c83e]
mov r10, rax
mov rcx, r10
call fcn.0052d09c
mov eax, dword [0x00555320]
cmp eax, 0
je 0x53f860
lea rax, [0x0053ef52]
mov r10, rax
mov rcx, r10
call sub.msvcrt.dll_atexit
leave
ret