Function at 0x100029f0
Capabilities:
Parse pe header

Disassembly:
push ebp
mov ebp, esp
push 0xffffffffffffffff
push 0x10008345
mov eax, dword fs:[0]
push eax
mov dword fs:[0], esp
sub esp, 0x60
push ebx
push edi
push esi
mov esi, ecx
xor eax, eax
mov ecx, 0xf
mov dword [ebp - 0x4c], eax
mov dword [ebp - 0x48], eax
mov dword [ebp - 0x40], ecx
mov dword [ebp - 4], eax
xor edx, edx
lea eax, [ebp - 0x54]
mov dword [ebp - 0x44], 0xa
mov dword [ebp - 0x54], edx
mov dword [ebp - 0x50], edx
mov word [ebp - 0x4c], dx
mov byte [ebp - 0x4a], dl
mov byte [eax], 0x49
cmp dword [ebp - 0x40], 0x10
jb 0x10002a48
mov eax, dword [ebp - 0x54]
mov byte [eax + 1], 0x6e
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], 0x10
jb 0x10002a58
mov eax, dword [ebp - 0x54]
mov byte [eax + 2], 0x69
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], 0x10
jb 0x10002a68
mov eax, dword [ebp - 0x54]
mov byte [eax + 3], 0x74
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], 0x10
jb 0x10002a78
mov eax, dword [ebp - 0x54]
mov byte [eax + 4], 0x50
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], 0x10
jb 0x10002a88
mov eax, dword [ebp - 0x54]
mov byte [eax + 5], 0x61
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], 0x10
jb 0x10002a98
mov eax, dword [ebp - 0x54]
mov byte [eax + 6], 0x74
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], 0x10
jb 0x10002aa8
mov eax, dword [ebp - 0x54]
mov byte [eax + 7], 0x63
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], 0x10
jb 0x10002ab8
mov eax, dword [ebp - 0x54]
mov byte [eax + 8], 0x68
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], 0x10
jb 0x10002ac8
mov eax, dword [ebp - 0x54]
mov byte [eax + 9], dl
lea eax, [ebp - 0x54]
cmp dword [ebp - 0x40], 0x10
jb 0x10002ad7
mov eax, dword [ebp - 0x54]
push eax
push esi
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
test eax, eax
je 0x10002c60
xor eax, eax
mov ecx, 0xf
mov dword [ebp - 0x30], eax
mov dword [ebp - 0x28], ecx
mov byte [ebp - 4], 1
lea eax, [ebp - 0x3c]
xor edx, edx
mov dword [ebp - 0x2c], 0xe
mov dword [ebp - 0x3c], edx
mov dword [ebp - 0x38], edx
mov dword [ebp - 0x34], edx
mov byte [ebp - 0x2e], dl
mov byte [eax], 0x55
cmp dword [ebp - 0x28], 0x10
jb 0x10002b1c
mov eax, dword [ebp - 0x3c]
mov byte [eax + 1], 0x4e
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002b2c
mov eax, dword [ebp - 0x3c]
mov byte [eax + 2], 0x49
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002b3c
mov eax, dword [ebp - 0x3c]
mov byte [eax + 3], 0x4f
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002b4c
mov eax, dword [ebp - 0x3c]
mov byte [eax + 4], 0x4e
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002b5c
mov eax, dword [ebp - 0x3c]
mov byte [eax + 5], 0x43
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002b6c
mov eax, dword [ebp - 0x3c]
mov byte [eax + 6], 0x4f
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002b7c
mov eax, dword [ebp - 0x3c]
mov byte [eax + 7], 0x52
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002b8c
mov eax, dword [ebp - 0x3c]
mov byte [eax + 8], 0x45
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002b9c
mov eax, dword [ebp - 0x3c]
mov byte [eax + 9], 0x2e
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002bac
mov eax, dword [ebp - 0x3c]
mov byte [eax + 0xa], 0x44
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002bbc
mov eax, dword [ebp - 0x3c]
mov byte [eax + 0xb], 0x4c
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002bcc
mov eax, dword [ebp - 0x3c]
mov byte [eax + 0xc], 0x4c
lea eax, [ebp - 0x3c]
cmp dword [ebp - 0x28], 0x10
jb 0x10002bdc
mov eax, dword [ebp - 0x3c]
mov byte [eax + 0xd], dl
cmp byte [esi + 0x2370], 0xeb
jne 0x10002c99
cmp byte [esi + 0x2380], 0xeb
jne 0x10002c99
cmp byte [esi + 0x238f], 0xeb
jne 0x10002c99
cmp byte [esi + 0x23df], 0xe9
jne 0x10002c99
cmp dword [ebp - 0x28], 0x10
lea eax, [ebp - 0x3c]
jb 0x10002c1f
mov eax, dword [ebp - 0x3c]
push eax
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
test eax, eax
je 0x10002c99
mov ecx, dword [ebp - 0x28]
cmp ecx, 0x10
jb 0x10002c60
mov edx, dword [ebp - 0x3c]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10002c56
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10002c56
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
push ecx
push edx
call fcn.10007566
add esp, 8
mov ecx, dword [ebp - 0x40]
pop esi
cmp ecx, 0x10
jb 0x1000348f
mov edx, dword [ebp - 0x54]
inc ecx
mov eax, edx
cmp ecx, 0x1000
jb 0x10003485
mov edx, dword [eax - 4]
add ecx, 0x23
sub eax, edx
add eax, 0xfffffffc
cmp eax, 0x1f
jbe 0x10003485
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll__invalid_parameter_noinfo_noreturn]
lea ecx, [ebp - 0x24]
call fcn.10004d00
push ecx
push 0x71
mov byte [ebp - 4], 2
call fcn.10004b80
push 0
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ebx, 0x4a
lea ecx, [ebp - 0x24]
push 1
mov word [eax], bx
call fcn.10004c10
mov edx, 0x65
lea ecx, [ebp - 0x24]
push 2
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x17c
push 3
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 4
lea ecx, [ebp - 0x24]
mov word [eax], dx
call fcn.10004c10
mov edx, 0x6c
lea ecx, [ebp - 0x24]
push 5
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x69
push 6
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov edi, 0x20
lea ecx, [ebp - 0x24]
push 7
mov word [eax], di
call fcn.10004c10
mov esi, 0x63
lea ecx, [ebp - 0x24]
push 8
mov word [eax], si
call fcn.10004c10
mov ecx, 0x68
push 9
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0xa
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
mov ecx, 0x65
push 0xb
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x73
push 0xc
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov esi, 0x7a
lea ecx, [ebp - 0x24]
push 0xd
mov word [eax], si
call fcn.10004c10
push 0xe
lea ecx, [ebp - 0x24]
mov word [eax], di
call fcn.10004c10
mov ecx, 0x6b
push 0xf
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x6f
push 0x10
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov edi, 0x72
lea ecx, [ebp - 0x24]
push 0x11
mov word [eax], di
call fcn.10004c10
push 0x12
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
mov ecx, 0x79
push 0x13
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x73
push 0x14
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x74
push 0x15
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x61
push 0x16
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x107
push 0x17
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x20
push 0x18
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x19
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
mov esi, 0x20
lea ecx, [ebp - 0x24]
push 0x1a
mov word [eax], si
call fcn.10004c10
mov ecx, 0x70
push 0x1b
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x1c
lea ecx, [ebp - 0x24]
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x75
push 0x1d
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x67
push 0x1e
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x69
push 0x1f
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x6e
push esi
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0xf3
push 0x21
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov edx, 0x77
lea ecx, [ebp - 0x24]
push 0x22
mov word [eax], dx
call fcn.10004c10
push 0x23
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
mov ecx, 0x73
push 0x24
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x65
push 0x25
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x26
lea ecx, [ebp - 0x24]
mov word [eax], di
call fcn.10004c10
push 0x27
lea ecx, [ebp - 0x24]
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x65
push 0x28
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x29
lea ecx, [ebp - 0x24]
mov word [eax], di
call fcn.10004c10
mov ecx, 0x61
push 0x2a
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x2b
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
mov ecx, 0x4b
push 0x2c
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov edx, 0x41
lea ecx, [ebp - 0x24]
push 0x2d
mov word [eax], dx
call fcn.10004c10
push 0x2e
lea ecx, [ebp - 0x24]
mov word [eax], bx
call fcn.10004c10
mov ebx, 0x4d
lea ecx, [ebp - 0x24]
push 0x2f
mov word [eax], bx
call fcn.10004c10
push 0x30
lea ecx, [ebp - 0x24]
mov word [eax], dx
call fcn.10004c10
push 0x31
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
mov ecx, 0x2d
mov word [eax], cx
push 0x32
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x33
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
mov ecx, 0x47
push 0x34
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov edx, 0x4f
lea ecx, [ebp - 0x24]
push 0x35
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x54
push 0x36
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x48
push 0x37
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov esi, 0x49
lea ecx, [ebp - 0x24]
push 0x38
mov word [eax], si
call fcn.10004c10
mov edi, 0x43
lea ecx, [ebp - 0x24]
push 0x39
mov word [eax], di
call fcn.10004c10
mov ecx, 0x20
push 0x3a
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x3b
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
mov ecx, 0x20
push 0x3c
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x3d
lea ecx, [ebp - 0x24]
mov word [eax], bx
call fcn.10004c10
push 0x3e
lea ecx, [ebp - 0x24]
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x44
push 0x3f
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x59
push 0x40
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x46
push 0x41
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x42
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
mov ecx, 0x4b
push edi
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x41
push 0x44
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x45
lea ecx, [ebp - 0x24]
mov word [eax], di
call fcn.10004c10
mov ecx, 0x4a
push 0x46
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x45
push 0x47
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x2c
push 0x48
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov edi, 0x20
lea ecx, [ebp - 0x24]
push esi
mov word [eax], di
call fcn.10004c10
mov ecx, 0x74
push 0x4a
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov edx, 0x6f
lea ecx, [ebp - 0x24]
push 0x4b
mov word [eax], dx
call fcn.10004c10
push 0x4c
lea ecx, [ebp - 0x24]
mov word [eax], di
call fcn.10004c10
mov ecx, 0x70
push ebx
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x4e
lea ecx, [ebp - 0x24]
mov word [eax], dx
call fcn.10004c10
mov edx, 0x73
lea ecx, [ebp - 0x24]
push 0x4f
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x69
push 0x50
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov esi, 0x61
lea ecx, [ebp - 0x24]
push 0x51
mov word [eax], si
call fcn.10004c10
mov ebx, 0x64
lea ecx, [ebp - 0x24]
push 0x52
mov word [eax], bx
call fcn.10004c10
push 0x53
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
push 0x54
lea ecx, [ebp - 0x24]
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x7a
push 0x55
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x56
lea ecx, [ebp - 0x24]
mov word [eax], di
call fcn.10004c10
mov ecx, 0x6e
push 0x57
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x69
push 0x58
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x65
push 0x59
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov edx, 0x77
lea ecx, [ebp - 0x24]
push 0x5a
mov word [eax], dx
call fcn.10004c10
mov edi, 0x142
lea ecx, [ebp - 0x24]
push 0x5b
mov word [eax], di
call fcn.10004c10
push 0x5c
lea ecx, [ebp - 0x24]
mov word [eax], si
call fcn.10004c10
mov ecx, 0x15b
push 0x5d
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x63
push 0x5e
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x69
push 0x5f
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x60
lea ecx, [ebp - 0x24]
mov word [eax], dx
call fcn.10004c10
mov esi, 0x105
lea ecx, [ebp - 0x24]
push 0x61
mov word [eax], si
call fcn.10004c10
mov ecx, 0x20
push 0x62
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push 0x63
lea ecx, [ebp - 0x24]
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x65
push ebx
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x72
push 0x65
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x73
push 0x66
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x6a
push 0x67
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x119
push 0x68
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x20
push 0x69
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x55
push 0x6a
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov edx, 0x6e
lea ecx, [ebp - 0x24]
push 0x6b
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x69
push 0x6c
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x6f
push 0x6d
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
push edx
lea ecx, [ebp - 0x24]
mov word [eax], dx
call fcn.10004c10
mov ecx, 0x61
push 0x6f
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
mov ecx, 0x2e
push 0x70
mov word [eax], cx
lea ecx, [ebp - 0x24]
call fcn.10004c10
xor ecx, ecx
mov word [eax], cx
lea ecx, [ebp - 0x6c]
call fcn.10004d00
push ecx
push 5
mov byte [ebp - 4], 3
call fcn.10004b80
push 0
lea ecx, [ebp - 0x6c]
call fcn.10004c10
mov ecx, 0x42
push 1
mov word [eax], cx
lea ecx, [ebp - 0x6c]
call fcn.10004c10
push 2
lea ecx, [ebp - 0x6c]
mov word [eax], di
call fcn.10004c10
push 3
lea ecx, [ebp - 0x6c]
mov word [eax], si
call fcn.10004c10
mov word [eax], bx
push 4
lea ecx, [ebp - 0x6c]
call fcn.10004c10
xor ecx, ecx
push ecx
mov word [eax], cx
lea ecx, [ebp - 0x6c]
call fcn.10004c00
push eax
lea ecx, [ebp - 0x24]
call fcn.10004c00
mov edx, eax
call fcn.10002710
add esp, 8
push 0xffffffffffffffff
call dword [sym.imp.api_ms_win_crt_runtime_l1_1_0.dll_quick_exit]
push ecx
push edx
call fcn.10007566
add esp, 8
mov ecx, dword [ebp - 0xc]
pop edi
mov dword fs:[0], ecx
pop ebx
mov esp, ebp
pop ebp
ret