Function at 0x425008
Capabilities:
Contain obfuscated stackstrings
Encode data using xor
Query environment variable

Disassembly:
push ebp
mov ebp, esp
push edi
push esi
push ebx
lea ebx, [ebp - 0x51]
sub esp, 0x7c
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7868]
test al, al
jne 0x425065
mov dword [esp], 0x4e7868
call fcn.004d5a00
test eax, eax
je 0x425065
mov dword [esp], ebx
mov ecx, 0x4eb580
call fcn.0043167c
push edi
mov dword [esp], 0x4d6a5c
call fcn.004013f0
mov dword [esp], 0x4e7868
call fcn.004d5ad0
mov ecx, 0x4eb580
call fcn.0043164c
mov dword [esp], 0x4eb580
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e76e0]
test al, al
jne 0x4250cc
mov dword [esp], 0x4e76e0
call fcn.004d5a00
test eax, eax
je 0x4250cc
mov dword [esp], ebx
mov ecx, 0x4eb1e0
call fcn.0043167c
push esi
mov dword [esp], 0x4d6a64
call fcn.004013f0
mov dword [esp], 0x4e76e0
call fcn.004d5ad0
mov ecx, 0x4eb1e0
call fcn.0043164c
mov dword [esp], 0x4eb1e0
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7730]
test al, al
jne 0x425133
mov dword [esp], 0x4e7730
call fcn.004d5a00
test eax, eax
je 0x425133
mov dword [esp], ebx
mov ecx, 0x4eb258
call fcn.0043167c
push ecx
mov dword [esp], 0x4d6a68
call fcn.004013f0
mov dword [esp], 0x4e7730
call fcn.004d5ad0
mov ecx, 0x4eb258
call fcn.0043164c
mov dword [esp], 0x4eb258
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7770]
test al, al
jne 0x42519a
mov dword [esp], 0x4e7770
call fcn.004d5a00
test eax, eax
je 0x42519a
mov dword [esp], ebx
mov ecx, 0x4eb308
call fcn.0043167c
push edx
mov dword [esp], 0x4d6a6c
call fcn.004013f0
mov dword [esp], 0x4e7770
call fcn.004d5ad0
mov ecx, 0x4eb308
call fcn.0043164c
mov dword [esp], 0x4eb308
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77b0]
test al, al
jne 0x425201
mov dword [esp], 0x4e77b0
call fcn.004d5a00
test eax, eax
je 0x425201
mov dword [esp], ebx
mov ecx, 0x4eb3a4
call fcn.0043167c
push eax
mov dword [esp], 0x4d6a70
call fcn.004013f0
mov dword [esp], 0x4e77b0
call fcn.004d5ad0
mov ecx, 0x4eb3a4
call fcn.0043164c
mov dword [esp], 0x4eb3a4
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77f0]
test al, al
jne 0x425268
mov dword [esp], 0x4e77f0
call fcn.004d5a00
test eax, eax
je 0x425268
mov dword [esp], ebx
mov ecx, 0x4eb440
call fcn.0043167c
push eax
mov dword [esp], 0x4d6a74
call fcn.004013f0
mov dword [esp], 0x4e77f0
call fcn.004d5ad0
mov ecx, 0x4eb440
call fcn.0043164c
mov dword [esp], 0x4eb440
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7848]
test al, al
jne 0x4252cf
mov dword [esp], 0x4e7848
call fcn.004d5a00
test eax, eax
je 0x4252cf
mov dword [esp], ebx
mov ecx, 0x4eb500
call fcn.0043167c
push eax
mov dword [esp], 0x4d6a78
call fcn.004013f0
mov dword [esp], 0x4e7848
call fcn.004d5ad0
mov ecx, 0x4eb500
call fcn.0043164c
mov dword [esp], 0x4eb500
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7858]
test al, al
jne 0x425336
mov dword [esp], 0x4e7858
call fcn.004d5a00
test eax, eax
je 0x425336
mov dword [esp], ebx
mov ecx, 0x4eb518
call fcn.0043167c
push eax
mov dword [esp], 0x4d6a7c
call fcn.004013f0
mov dword [esp], 0x4e7858
call fcn.004d5ad0
mov ecx, 0x4eb518
mov esi, 0x4e7020
mov edi, ebx
call fcn.0043164c
mov dword [esp], 0x4eb518
call fcn.00424ea0
mov ecx, 0x39
mov dword [ebp - 0x5e], 0x61b056aa
rep movsb byte es:[edi], byte [esi]
mov al, byte [0x4e7860]
test al, al
jne 0x4253a0
mov dword [esp], 0x4e7860
call fcn.004d5a00
test eax, eax
je 0x4253a0
mov dword [esp], ebx
mov ecx, 0x4eb540
call fcn.00431544
push eax
mov dword [esp], 0x4d6a80
call fcn.004013f0
mov dword [esp], 0x4e7860
call fcn.004d5ad0
mov ecx, 0x4eb540
call fcn.00431514
mov dword [esp], 0x4eb540
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425426
lea eax, [ebp - 0x5e]
call eax
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e76e8]
test al, al
jne 0x425410
mov dword [esp], 0x4e76e8
call fcn.004d5a00
test eax, eax
je 0x425410
mov dword [esp], ebx
mov ecx, 0x4eb1ec
call fcn.0043167c
push edi
mov dword [esp], 0x4d6a90
call fcn.004013f0
mov dword [esp], 0x4e76e8
call fcn.004d5ad0
mov ecx, 0x4eb1ec
call fcn.0043164c
mov dword [esp], 0x4eb1ec
call fcn.00424ea0
mov dword [ebp - 0x51], 0x676c6846
mov esi, dword [0x4e8930]
mov ecx, 0xd
lea ebx, [ebp - 0x51]
mov dword [ebp - 0x4d], 0x68756056
mov dword [ebp - 0x49], 0x6e697b7d
mov word [ebp - 0x45], 0x4d
mov eax, ecx
mov edi, 0xd
xor edx, edx
div edi
xor byte [ebp + ecx - 0x5e], dl
inc ecx
cmp ecx, 0x1a
jne 0x42544f
lea ecx, [ebp - 0x5e]
call fcn.004313d0
mov eax, ecx
call fcn.0042aa74
mov dword [esp + 4], ebx
mov dword [esp], eax
call esi
push esi
push esi
mov dword [0x4edc3c], eax
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e76f0]
test al, al
jne 0x4254d4
mov dword [esp], 0x4e76f0
call fcn.004d5a00
test eax, eax
je 0x4254d4
mov dword [esp], ebx
mov ecx, 0x4eb1f8
call fcn.0043167c
push ebx
mov dword [esp], 0x4d6a94
call fcn.004013f0
mov dword [esp], 0x4e76f0
call fcn.004d5ad0
mov ecx, 0x4eb1f8
lea ebx, [ebp - 0x51]
call fcn.0043164c
mov dword [esp], 0x4eb1f8
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e76f8]
test al, al
jne 0x42553e
mov dword [esp], 0x4e76f8
call fcn.004d5a00
test eax, eax
je 0x42553e
mov dword [esp], ebx
mov ecx, 0x4eb204
call fcn.0043167c
push ecx
mov dword [esp], 0x4d6a98
call fcn.004013f0
mov dword [esp], 0x4e76f8
call fcn.004d5ad0
mov ecx, 0x4eb204
call fcn.0043164c
mov dword [esp], 0x4eb204
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7700]
test al, al
jne 0x4255a5
mov dword [esp], 0x4e7700
call fcn.004d5a00
test eax, eax
je 0x4255a5
mov dword [esp], ebx
mov ecx, 0x4eb210
call fcn.0043167c
push edx
mov dword [esp], 0x4d6a9c
call fcn.004013f0
mov dword [esp], 0x4e7700
call fcn.004d5ad0
mov ecx, 0x4eb210
call fcn.0043164c
mov dword [esp], 0x4eb210
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7708]
test al, al
jne 0x42560c
mov dword [esp], 0x4e7708
call fcn.004d5a00
test eax, eax
je 0x42560c
mov dword [esp], ebx
mov ecx, 0x4eb21c
call fcn.0043167c
push eax
mov dword [esp], 0x4d6aa0
call fcn.004013f0
mov dword [esp], 0x4e7708
call fcn.004d5ad0
mov ecx, 0x4eb21c
call fcn.0043164c
mov dword [esp], 0x4eb21c
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7710]
test al, al
jne 0x425673
mov dword [esp], 0x4e7710
call fcn.004d5a00
test eax, eax
je 0x425673
mov dword [esp], ebx
mov ecx, 0x4eb228
call fcn.0043167c
push eax
mov dword [esp], 0x4d6aa4
call fcn.004013f0
mov dword [esp], 0x4e7710
call fcn.004d5ad0
mov ecx, 0x4eb228
call fcn.0043164c
mov dword [esp], 0x4eb228
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7718]
test al, al
jne 0x4256da
mov dword [esp], 0x4e7718
call fcn.004d5a00
test eax, eax
je 0x4256da
mov dword [esp], ebx
mov ecx, 0x4eb234
call fcn.0043167c
push eax
mov dword [esp], 0x4d6aa8
call fcn.004013f0
mov dword [esp], 0x4e7718
call fcn.004d5ad0
mov ecx, 0x4eb234
call fcn.0043164c
mov dword [esp], 0x4eb234
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7720]
test al, al
jne 0x425741
mov dword [esp], 0x4e7720
call fcn.004d5a00
test eax, eax
je 0x425741
mov dword [esp], ebx
mov ecx, 0x4eb240
call fcn.0043167c
push eax
mov dword [esp], 0x4d6aac
call fcn.004013f0
mov dword [esp], 0x4e7720
call fcn.004d5ad0
mov ecx, 0x4eb240
call fcn.0043164c
mov dword [esp], 0x4eb240
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7728]
test al, al
jne 0x4257a8
mov dword [esp], 0x4e7728
call fcn.004d5a00
test eax, eax
je 0x4257a8
mov dword [esp], ebx
mov ecx, 0x4eb24c
call fcn.0043167c
push eax
mov dword [esp], 0x4d6ab0
call fcn.004013f0
mov dword [esp], 0x4e7728
call fcn.004d5ad0
mov ecx, 0x4eb24c
mov esi, 0x4e7020
mov edi, ebx
call fcn.0043164c
mov dword [esp], 0x4eb24c
call fcn.00424ea0
mov ecx, 0x39
mov dword [ebp - 0x5e], 0x75c05eae
rep movsb byte es:[edi], byte [esi]
mov al, byte [0x4e7738]
test al, al
jne 0x425812
mov dword [esp], 0x4e7738
call fcn.004d5a00
test eax, eax
je 0x425812
mov dword [esp], ebx
mov ecx, 0x4eb280
call fcn.00431544
push edi
mov dword [esp], 0x4d6ab8
call fcn.004013f0
mov dword [esp], 0x4e7738
call fcn.004d5ad0
mov ecx, 0x4eb280
call fcn.00431514
mov dword [esp], 0x4eb280
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425898
lea eax, [ebp - 0x5e]
call eax
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7740]
test al, al
jne 0x425882
mov dword [esp], 0x4e7740
call fcn.004d5a00
test eax, eax
je 0x425882
mov dword [esp], ebx
mov ecx, 0x4eb2c0
call fcn.0043167c
push esi
mov dword [esp], 0x4d6ac4
call fcn.004013f0
mov dword [esp], 0x4e7740
call fcn.004d5ad0
mov ecx, 0x4eb2c0
call fcn.0043164c
mov dword [esp], 0x4eb2c0
call fcn.00424ea0
mov dword [ebp - 0x51], 0x656a665d
mov ebx, dword [0x4e8930]
mov ecx, 0xe
lea esi, [ebp - 0x51]
mov dword [ebp - 0x4d], 0x6151646e
mov dword [ebp - 0x49], 0x7a726976
mov word [ebp - 0x45], 0x6f6a
mov byte [ebp - 0x43], 0
mov eax, ecx
mov edi, 0x11
xor edx, edx
div edi
xor byte [ebp + ecx - 0x5f], dl
inc ecx
cmp ecx, 0x1c
jne 0x4258c5
lea ecx, [ebp - 0x5e]
call fcn.004313d0
mov eax, ecx
call fcn.0042aa74
mov dword [esp + 4], esi
lea esi, [ebp - 0x51]
mov dword [esp], eax
call ebx
mov ecx, 0xc
push ebx
push ebx
mov ebx, dword [0x4e8930]
mov dword [0x4edc48], eax
mov dword [ebp - 0x51], 0x66606f40
mov dword [ebp - 0x4d], 0x69766151
mov dword [ebp - 0x49], 0x6f6a7a72
mov byte [ebp - 0x45], 0
mov eax, ecx
mov edi, 0xd
xor edx, edx
div edi
xor byte [ebp + ecx - 0x5d], dl
inc ecx
cmp ecx, 0x18
jne 0x425920
lea ecx, [ebp - 0x5e]
call fcn.004313d0
mov eax, ecx
call fcn.0042aa74
mov dword [esp + 4], esi
lea esi, [ebp - 0x51]
mov dword [esp], eax
call ebx
push ecx
push ecx
mov edi, dword [0x4e8930]
mov ecx, 0xc
mov dword [0x4edc40], eax
mov dword [ebp - 0x51], 0x69626f40
mov dword [ebp - 0x4d], 0x69766151
mov dword [ebp - 0x49], 0x6f6a7a72
mov byte [ebp - 0x45], 0
mov eax, ecx
mov ebx, 0xd
xor edx, edx
div ebx
xor byte [ebp + ecx - 0x5d], dl
inc ecx
cmp ecx, 0x18
jne 0x42597b
lea ebx, [ebp - 0x5e]
mov ecx, ebx
call fcn.004313d0
mov eax, ebx
call fcn.0042aa74
mov dword [esp + 4], esi
mov dword [esp], eax
call edi
push edx
push edx
mov dword [0x4edc44], eax
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7748]
test al, al
jne 0x425a02
mov dword [esp], 0x4e7748
call fcn.004d5a00
test eax, eax
je 0x425a02
mov dword [esp], esi
mov ecx, 0x4eb2cc
call fcn.0043167c
push eax
mov dword [esp], 0x4d6ac8
call fcn.004013f0
mov dword [esp], 0x4e7748
call fcn.004d5ad0
mov ecx, 0x4eb2cc
lea esi, [ebp - 0x51]
call fcn.0043164c
mov dword [esp], 0x4eb2cc
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7750]
test al, al
jne 0x425a6c
mov dword [esp], 0x4e7750
call fcn.004d5a00
test eax, eax
je 0x425a6c
mov dword [esp], esi
mov ecx, 0x4eb2d8
call fcn.0043167c
push edi
mov dword [esp], 0x4d6acc
call fcn.004013f0
mov dword [esp], 0x4e7750
call fcn.004d5ad0
mov ecx, 0x4eb2d8
call fcn.0043164c
mov dword [esp], 0x4eb2d8
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7758]
test al, al
jne 0x425ad3
mov dword [esp], 0x4e7758
call fcn.004d5a00
test eax, eax
je 0x425ad3
mov dword [esp], esi
mov ecx, 0x4eb2e4
call fcn.0043167c
push ecx
mov dword [esp], 0x4d6ad0
call fcn.004013f0
mov dword [esp], 0x4e7758
call fcn.004d5ad0
mov ecx, 0x4eb2e4
call fcn.0043164c
mov dword [esp], 0x4eb2e4
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7760]
test al, al
jne 0x425b3a
mov dword [esp], 0x4e7760
call fcn.004d5a00
test eax, eax
je 0x425b3a
mov dword [esp], esi
mov ecx, 0x4eb2f0
call fcn.0043167c
push edx
mov dword [esp], 0x4d6ad4
call fcn.004013f0
mov dword [esp], 0x4e7760
call fcn.004d5ad0
mov ecx, 0x4eb2f0
call fcn.0043164c
mov dword [esp], 0x4eb2f0
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7768]
test al, al
jne 0x425ba1
mov dword [esp], 0x4e7768
call fcn.004d5a00
test eax, eax
je 0x425ba1
mov dword [esp], esi
mov ecx, 0x4eb2fc
call fcn.0043167c
push eax
mov dword [esp], 0x4d6ad8
call fcn.004013f0
mov dword [esp], 0x4e7768
call fcn.004d5ad0
mov ecx, 0x4eb2fc
call fcn.0043164c
mov dword [esp], 0x4eb2fc
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7778]
test al, al
jne 0x425c08
mov dword [esp], 0x4e7778
call fcn.004d5a00
test eax, eax
je 0x425c08
mov dword [esp], esi
mov ecx, 0x4eb314
call fcn.0043167c
push eax
mov dword [esp], 0x4d6ae0
call fcn.004013f0
mov dword [esp], 0x4e7778
call fcn.004d5ad0
mov ecx, 0x4eb314
call fcn.0043164c
mov dword [esp], 0x4eb314
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7780]
test al, al
jne 0x425c6f
mov dword [esp], 0x4e7780
call fcn.004d5a00
test eax, eax
je 0x425c6f
mov dword [esp], esi
mov ecx, 0x4eb320
call fcn.0043167c
push eax
mov dword [esp], 0x4d6ae4
call fcn.004013f0
mov dword [esp], 0x4e7780
call fcn.004d5ad0
mov ecx, 0x4eb320
call fcn.0043164c
mov dword [esp], 0x4eb320
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7788]
test al, al
jne 0x425cd6
mov dword [esp], 0x4e7788
call fcn.004d5a00
test eax, eax
je 0x425cd6
mov dword [esp], esi
mov ecx, 0x4eb32c
call fcn.0043167c
push eax
mov dword [esp], 0x4d6ae8
call fcn.004013f0
mov dword [esp], 0x4e7788
call fcn.004d5ad0
mov ecx, 0x4eb32c
lea edi, [ebp - 0x51]
mov esi, 0x4e7020
call fcn.0043164c
mov dword [esp], 0x4eb32c
call fcn.00424ea0
mov ecx, 0x39
mov dword [ebp - 0x5e], 0x89d066b2
rep movsb byte es:[edi], byte [esi]
lea esi, [ebp - 0x51]
mov al, byte [0x4e7790]
test al, al
jne 0x425d44
mov dword [esp], 0x4e7790
call fcn.004d5a00
test eax, eax
je 0x425d44
mov dword [esp], esi
mov ecx, 0x4eb340
call fcn.00431544
push eax
mov dword [esp], 0x4d6aec
call fcn.004013f0
mov dword [esp], 0x4e7790
call fcn.004d5ad0
mov ecx, 0x4eb340
call fcn.00431514
mov dword [esp], 0x4eb340
call sub.msvcrt.dll_getenv
test eax, eax
je 0x425dc7
call ebx
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7798]
test al, al
jne 0x425db1
mov dword [esp], 0x4e7798
call fcn.004d5a00
test eax, eax
je 0x425db1
mov dword [esp], esi
mov ecx, 0x4eb380
call fcn.0043167c
push edi
mov dword [esp], 0x4d6af8
call fcn.004013f0
mov dword [esp], 0x4e7798
call fcn.004d5ad0
mov ecx, 0x4eb380
call fcn.0043164c
mov dword [esp], 0x4eb380
call fcn.00424ea0
xor ecx, ecx
mov dword [esp], ecx
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
push ebx
mov dword [ebp - 0x6c], eax
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77a0]
test al, al
jne 0x425e27
mov dword [esp], 0x4e77a0
call fcn.004d5a00
test eax, eax
je 0x425e27
mov dword [esp], esi
mov ecx, 0x4eb38c
call fcn.0043167c
push edx
mov dword [esp], 0x4d6afc
call fcn.004013f0
mov dword [esp], 0x4e77a0
call fcn.004d5ad0
mov ecx, 0x4eb38c
call fcn.0043164c
mov dword [esp], 0x4eb38c
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77a8]
test al, al
jne 0x425e8e
mov dword [esp], 0x4e77a8
call fcn.004d5a00
test eax, eax
je 0x425e8e
mov dword [esp], esi
mov ecx, 0x4eb398
call fcn.0043167c
push eax
mov dword [esp], 0x4d6b00
call fcn.004013f0
mov dword [esp], 0x4e77a8
call fcn.004d5ad0
mov ecx, 0x4eb398
call fcn.0043164c
mov dword [esp], 0x4eb398
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77b8]
test al, al
jne 0x425ef5
mov dword [esp], 0x4e77b8
call fcn.004d5a00
test eax, eax
je 0x425ef5
mov dword [esp], esi
mov ecx, 0x4eb3b0
call fcn.0043167c
push eax
mov dword [esp], 0x4d6b08
call fcn.004013f0
mov dword [esp], 0x4e77b8
call fcn.004d5ad0
mov ecx, 0x4eb3b0
call fcn.0043164c
mov dword [esp], 0x4eb3b0
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77c0]
test al, al
jne 0x425f5c
mov dword [esp], 0x4e77c0
call fcn.004d5a00
test eax, eax
je 0x425f5c
mov dword [esp], esi
mov ecx, 0x4eb3bc
call fcn.0043167c
push eax
mov dword [esp], 0x4d6b0c
call fcn.004013f0
mov dword [esp], 0x4e77c0
call fcn.004d5ad0
mov ecx, 0x4eb3bc
call fcn.0043164c
mov dword [esp], 0x4eb3bc
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77c8]
test al, al
jne 0x425fc3
mov dword [esp], 0x4e77c8
call fcn.004d5a00
test eax, eax
je 0x425fc3
mov dword [esp], esi
mov ecx, 0x4eb3c8
call fcn.0043167c
push eax
mov dword [esp], 0x4d6b10
call fcn.004013f0
mov dword [esp], 0x4e77c8
call fcn.004d5ad0
mov ecx, 0x4eb3c8
call fcn.0043164c
mov dword [esp], 0x4eb3c8
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77d0]
test al, al
jne 0x42602a
mov dword [esp], 0x4e77d0
call fcn.004d5a00
test eax, eax
je 0x42602a
mov dword [esp], esi
mov ecx, 0x4eb3d4
call fcn.0043167c
push eax
mov dword [esp], 0x4d6b14
call fcn.004013f0
mov dword [esp], 0x4e77d0
call fcn.004d5ad0
mov ecx, 0x4eb3d4
call fcn.0043164c
mov dword [esp], 0x4eb3d4
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77d8]
test al, al
jne 0x426091
mov dword [esp], 0x4e77d8
call fcn.004d5a00
test eax, eax
je 0x426091
mov dword [esp], esi
mov ecx, 0x4eb3e0
call fcn.0043167c
push edi
mov dword [esp], 0x4d6b18
call fcn.004013f0
mov dword [esp], 0x4e77d8
call fcn.004d5ad0
mov ecx, 0x4eb3e0
call fcn.0043164c
mov dword [esp], 0x4eb3e0
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77e0]
test al, al
jne 0x4260f8
mov dword [esp], 0x4e77e0
call fcn.004d5a00
test eax, eax
je 0x4260f8
mov dword [esp], esi
mov ecx, 0x4eb3ec
call fcn.0043167c
push esi
mov dword [esp], 0x4d6b1c
call fcn.004013f0
mov dword [esp], 0x4e77e0
call fcn.004d5ad0
mov ecx, 0x4eb3ec
lea edi, [ebp - 0x51]
mov esi, 0x4e7020
call fcn.0043164c
mov dword [esp], 0x4eb3ec
call fcn.00424ea0
mov ecx, 0x39
mov dword [ebp - 0x5e], 0x9de06eb6
rep movsb byte es:[edi], byte [esi]
lea esi, [ebp - 0x51]
mov al, byte [0x4e77e8]
test al, al
jne 0x426166
mov dword [esp], 0x4e77e8
call fcn.004d5a00
test eax, eax
je 0x426166
mov dword [esp], esi
mov ecx, 0x4eb400
call fcn.00431544
push ebx
mov dword [esp], 0x4d6b20
call fcn.004013f0
mov dword [esp], 0x4e77e8
call fcn.004d5ad0
mov ecx, 0x4eb400
call fcn.00431514
mov dword [esp], 0x4eb400
call sub.msvcrt.dll_getenv
test eax, eax
je 0x4261ec
lea eax, [ebp - 0x5e]
call eax
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e77f8]
test al, al
jne 0x4261d6
mov dword [esp], 0x4e77f8
call fcn.004d5a00
test eax, eax
je 0x4261d6
mov dword [esp], esi
mov ecx, 0x4eb44c
call fcn.0043167c
push ecx
mov dword [esp], 0x4d6b34
call fcn.004013f0
mov dword [esp], 0x4e77f8
call fcn.004d5ad0
mov ecx, 0x4eb44c
call fcn.0043164c
mov dword [esp], 0x4eb44c
call fcn.00424ea0
mov eax, dword [ebp + 0xc]
mov dword [esp + 8], eax
movzx eax, word [ebp + 0x10]
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x6c]
mov dword [esp], eax
call dword [0x4edc3c]
sub esp, 0xc
mov edi, eax
test eax, eax
jne 0x426214
xor ebx, ebx
jmp 0x42624f
mov dword [esp + 4], eax
mov eax, dword [ebp - 0x6c]
mov dword [esp], eax
call dword [0x4edc40]
push edx
push edx
test eax, eax
je 0x426210
mov dword [esp], eax
call dword [0x4edc44]
push ebx
mov ebx, eax
test eax, eax
je 0x42624f
mov dword [esp + 4], edi
mov eax, dword [ebp - 0x6c]
mov dword [esp], eax
call dword [0x4edc48]
push ecx
push ecx
mov dword [ebp - 0x70], eax
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7800]
test al, al
jne 0x4262a0
mov dword [esp], 0x4e7800
call fcn.004d5a00
test eax, eax
je 0x4262a0
mov dword [esp], esi
mov ecx, 0x4eb458
call fcn.0043167c
push edx
mov dword [esp], 0x4d6b38
call fcn.004013f0
mov dword [esp], 0x4e7800
call fcn.004d5ad0
mov ecx, 0x4eb458
call fcn.0043164c
mov dword [esp], 0x4eb458
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7808]
test al, al
jne 0x426307
mov dword [esp], 0x4e7808
call fcn.004d5a00
test eax, eax
je 0x426307
mov dword [esp], esi
mov ecx, 0x4eb464
call fcn.0043167c
push eax
mov dword [esp], 0x4d6b3c
call fcn.004013f0
mov dword [esp], 0x4e7808
call fcn.004d5ad0
mov ecx, 0x4eb464
call fcn.0043164c
mov dword [esp], 0x4eb464
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7810]
test al, al
jne 0x42636e
mov dword [esp], 0x4e7810
call fcn.004d5a00
test eax, eax
je 0x42636e
mov dword [esp], esi
mov ecx, 0x4eb470
call fcn.0043167c
push eax
mov dword [esp], 0x4d6b40
call fcn.004013f0
mov dword [esp], 0x4e7810
call fcn.004d5ad0
mov ecx, 0x4eb470
call fcn.0043164c
mov dword [esp], 0x4eb470
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7818]
test al, al
jne 0x4263d5
mov dword [esp], 0x4e7818
call fcn.004d5a00
test eax, eax
je 0x4263d5
mov dword [esp], esi
mov ecx, 0x4eb47c
call fcn.0043167c
push eax
mov dword [esp], 0x4d6b44
call fcn.004013f0
mov dword [esp], 0x4e7818
call fcn.004d5ad0
mov ecx, 0x4eb47c
call fcn.0043164c
mov dword [esp], 0x4eb47c
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7820]
test al, al
jne 0x42643c
mov dword [esp], 0x4e7820
call fcn.004d5a00
test eax, eax
je 0x42643c
mov dword [esp], esi
mov ecx, 0x4eb488
call fcn.0043167c
push eax
mov dword [esp], 0x4d6b48
call fcn.004013f0
mov dword [esp], 0x4e7820
call fcn.004d5ad0
mov ecx, 0x4eb488
call fcn.0043164c
mov dword [esp], 0x4eb488
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7828]
test al, al
jne 0x4264a3
mov dword [esp], 0x4e7828
call fcn.004d5a00
test eax, eax
je 0x4264a3
mov dword [esp], esi
mov ecx, 0x4eb494
call fcn.0043167c
push eax
mov dword [esp], 0x4d6b4c
call fcn.004013f0
mov dword [esp], 0x4e7828
call fcn.004d5ad0
mov ecx, 0x4eb494
call fcn.0043164c
mov dword [esp], 0x4eb494
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7830]
test al, al
jne 0x42650a
mov dword [esp], 0x4e7830
call fcn.004d5a00
test eax, eax
je 0x42650a
mov dword [esp], esi
mov ecx, 0x4eb4a0
call fcn.0043167c
push edi
mov dword [esp], 0x4d6b50
call fcn.004013f0
mov dword [esp], 0x4e7830
call fcn.004d5ad0
mov ecx, 0x4eb4a0
call fcn.0043164c
mov dword [esp], 0x4eb4a0
call fcn.00424ea0
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7838]
test al, al
jne 0x426571
mov dword [esp], 0x4e7838
call fcn.004d5a00
test eax, eax
je 0x426571
mov dword [esp], esi
mov ecx, 0x4eb4ac
call fcn.0043167c
push esi
mov dword [esp], 0x4d6b54
call fcn.004013f0
mov dword [esp], 0x4e7838
call fcn.004d5ad0
mov ecx, 0x4eb4ac
lea edi, [ebp - 0x51]
mov esi, 0x4e7020
call fcn.0043164c
mov dword [esp], 0x4eb4ac
call fcn.00424ea0
mov ecx, 0x39
mov dword [ebp - 0x5e], 0xb1f076ba
rep movsb byte es:[edi], byte [esi]
lea esi, [ebp - 0x51]
mov al, byte [0x4e7840]
test al, al
jne 0x4265df
mov dword [esp], 0x4e7840
call fcn.004d5a00
test eax, eax
je 0x4265df
mov dword [esp], esi
mov ecx, 0x4eb4c0
call fcn.00431544
push ecx
mov dword [esp], 0x4d6b58
call fcn.004013f0
mov dword [esp], 0x4e7840
call fcn.004d5ad0
mov ecx, 0x4eb4c0
call fcn.00431514
mov dword [esp], 0x4eb4c0
call sub.msvcrt.dll_getenv
test eax, eax
je 0x426665
lea eax, [ebp - 0x5e]
call eax
mov dword [ebp - 0x51], 0xc1eb1542
mov dword [ebp - 0x4d], 0x7c90ec48
mov byte [ebp - 0x49], 0x42
mov al, byte [0x4e7850]
test al, al
jne 0x42664f
mov dword [esp], 0x4e7850
call fcn.004d5a00
test eax, eax
je 0x42664f
mov dword [esp], esi
mov ecx, 0x4eb50c
call fcn.0043167c
push edx
mov dword [esp], 0x4d6b68
call fcn.004013f0
mov dword [esp], 0x4e7850
call fcn.004d5ad0
mov ecx, 0x4eb50c
call fcn.0043164c
mov dword [esp], 0x4eb50c
call fcn.00424ea0
mov eax, dword [ebp + 8]
mov edx, dword [ebp + 8]
add eax, 8
mov dword [edx], eax
test ebx, ebx
jne 0x426686
cmp dword [ebp - 0x70], 0
je 0x426686
mov dword [esp], 0x4ee05c
call fcn.004dbbb8
mov eax, dword [ebp - 0x70]
mov dword [esp], ebx
add eax, ebx
mov dword [esp + 4], eax
mov ecx, dword [ebp + 8]
call fcn.004bc0d0
push eax
push eax
mov eax, dword [ebp + 8]
lea esp, [ebp - 0xc]
pop ebx
pop esi
pop edi
pop ebp
ret