Function at 0x401000
Capabilities:
Link many functions at runtime

Disassembly:
push ebp
mov ebp, esp
sub esp, 0x24
push 0x408020
call dword [sym.imp.KERNEL32.dll_GetModuleHandleA]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0
jne 0x401028
push 0x40802c
call dword [sym.imp.KERNEL32.dll_LoadLibraryA]
mov dword [ebp - 4], eax
cmp dword [ebp - 4], 0xffffffff
je 0x401852
push 0x40803c
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094d8], eax
push 0x40804c
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409494], eax
push 0x40805c
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409470], eax
push 0x40806c
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094d4], eax
cmp dword [0x4094d8], 0
je 0x4010af
cmp dword [0x409494], 0
je 0x4010af
cmp dword [0x409470], 0
je 0x4010af
cmp dword [0x4094d4], 0
je 0x4010af
mov dword [ebp - 8], 1
jmp 0x4010b6
mov dword [ebp - 8], 0
cmp dword [ebp - 8], 0
jne 0x4010d1
push 0x40807c
call dword [sym.imp.MSVCRT.dll_puts]
add esp, 4
xor eax, eax
jmp 0x401867
push 0x4080a8
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409464], eax
push 0x4080b8
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094f8], eax
cmp dword [0x409464], 0
je 0x401114
cmp dword [0x4094f8], 0
je 0x401114
mov dword [ebp - 0xc], 1
jmp 0x40111b
mov dword [ebp - 0xc], 0
cmp dword [ebp - 0xc], 0
jne 0x401136
push 0x4080c8
call dword [sym.imp.MSVCRT.dll_puts]
add esp, 4
xor eax, eax
jmp 0x401867
push 0x408100
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094d0], eax
push 0x408110
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409484], eax
push 0x408120
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094e8], eax
push 0x408130
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409510], eax
push 0x408140
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094b4], eax
push 0x408150
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409488], eax
cmp dword [0x4094d0], 0
je 0x4011ed
cmp dword [0x409484], 0
je 0x4011ed
cmp dword [0x4094e8], 0
je 0x4011ed
cmp dword [0x409510], 0
je 0x4011ed
cmp dword [0x4094b4], 0
je 0x4011ed
cmp dword [0x409488], 0
je 0x4011ed
mov dword [ebp - 0x10], 1
jmp 0x4011f4
mov dword [ebp - 0x10], 0
cmp dword [ebp - 0x10], 0
jne 0x40120f
push 0x408160
call dword [sym.imp.MSVCRT.dll_puts]
add esp, 4
xor eax, eax
jmp 0x401867
push 0x40819c
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094c4], eax
push 0x4081ac
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409540], eax
push 0x4081c0
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x40949c], eax
push 0x4081d4
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409534], eax
push 0x4081f0
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094a0], eax
push 0x408208
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x40948c], eax
push 0x40821c
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409524], eax
push 0x408238
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409518], eax
push 0x408250
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409528], eax
push 0x408260
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409480], eax
push 0x408270
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094c0], eax
push 0x408284
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094b0], eax
cmp dword [0x4094c4], 0
je 0x401374
cmp dword [0x409540], 0
je 0x401374
cmp dword [0x40949c], 0
je 0x401374
cmp dword [0x409534], 0
je 0x401374
cmp dword [0x4094a0], 0
je 0x401374
cmp dword [0x40948c], 0
je 0x401374
cmp dword [0x409524], 0
je 0x401374
cmp dword [0x409518], 0
je 0x401374
cmp dword [0x409528], 0
je 0x401374
cmp dword [0x409480], 0
je 0x401374
cmp dword [0x4094c0], 0
je 0x401374
cmp dword [0x4094b0], 0
je 0x401374
mov dword [ebp - 0x14], 1
jmp 0x40137b
mov dword [ebp - 0x14], 0
cmp dword [ebp - 0x14], 0
jne 0x401396
push 0x408298
call dword [sym.imp.MSVCRT.dll_puts]
add esp, 4
xor eax, eax
jmp 0x401867
push 0x4082c4
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094a8], eax
push 0x4082d4
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094b8], eax
push 0x4082e8
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409478], eax
push 0x4082fc
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094e0], eax
push 0x40831c
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094ac], eax
push 0x408334
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409468], eax
push 0x40834c
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x40953c], eax
push 0x40836c
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094bc], eax
push 0x408384
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409498], eax
push 0x408398
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409508], eax
push 0x4083a8
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094f0], eax
push 0x4083bc
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409530], eax
cmp dword [0x4094a8], 0
je 0x4014fb
cmp dword [0x4094b8], 0
je 0x4014fb
cmp dword [0x409478], 0
je 0x4014fb
cmp dword [0x4094e0], 0
je 0x4014fb
cmp dword [0x4094ac], 0
je 0x4014fb
cmp dword [0x409468], 0
je 0x4014fb
cmp dword [0x40953c], 0
je 0x4014fb
cmp dword [0x4094bc], 0
je 0x4014fb
cmp dword [0x409498], 0
je 0x4014fb
cmp dword [0x409508], 0
je 0x4014fb
cmp dword [0x4094f0], 0
je 0x4014fb
cmp dword [0x409530], 0
je 0x4014fb
mov dword [ebp - 0x18], 1
jmp 0x401502
mov dword [ebp - 0x18], 0
cmp dword [ebp - 0x18], 0
jne 0x40151d
push 0x4083d4
call dword [sym.imp.MSVCRT.dll_puts]
add esp, 4
xor eax, eax
jmp 0x401867
push 0x408404
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409490], eax
push 0x408410
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409514], eax
push 0x408424
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409538], eax
push 0x408440
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409474], eax
push 0x408454
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x40951c], eax
push 0x40846c
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094fc], eax
push 0x408488
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409500], eax
push 0x40849c
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094f4], eax
push 0x4084b8
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x40946c], eax
push 0x4084d4
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409504], eax
push 0x4084f4
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094a4], eax
cmp dword [0x409490], 0
je 0x401665
cmp dword [0x409514], 0
je 0x401665
cmp dword [0x409538], 0
je 0x401665
cmp dword [0x409474], 0
je 0x401665
cmp dword [0x40951c], 0
je 0x401665
cmp dword [0x4094fc], 0
je 0x401665
cmp dword [0x409500], 0
je 0x401665
cmp dword [0x4094f4], 0
je 0x401665
cmp dword [0x40946c], 0
je 0x401665
cmp dword [0x409504], 0
je 0x401665
cmp dword [0x4094a4], 0
je 0x401665
mov dword [ebp - 0x1c], 1
jmp 0x40166c
mov dword [ebp - 0x1c], 0
cmp dword [ebp - 0x1c], 0
jne 0x401687
push 0x408508
call dword [sym.imp.MSVCRT.dll_puts]
add esp, 4
xor eax, eax
jmp 0x401867
push 0x40853c
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409520], eax
push 0x408548
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094ec], eax
push 0x40855c
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x40950c], eax
push 0x408578
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409460], eax
push 0x408590
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409548], eax
push 0x4085ac
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x409544], eax
push 0x4085c8
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x40954c], eax
push 0x4085e0
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x40952c], eax
push 0x4085fc
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094e4], eax
push 0x40861c
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094c8], eax
push 0x40863c
mov eax, dword [ebp - 4]
push eax
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x40947c], eax
cmp dword [0x409520], 0
je 0x4017cf
cmp dword [0x4094ec], 0
je 0x4017cf
cmp dword [0x40950c], 0
je 0x4017cf
cmp dword [0x409460], 0
je 0x4017cf
cmp dword [0x409548], 0
je 0x4017cf
cmp dword [0x409544], 0
je 0x4017cf
cmp dword [0x40954c], 0
je 0x4017cf
cmp dword [0x40952c], 0
je 0x4017cf
cmp dword [0x4094e4], 0
je 0x4017cf
cmp dword [0x4094c8], 0
je 0x4017cf
cmp dword [0x40947c], 0
je 0x4017cf
mov dword [ebp - 0x20], 1
jmp 0x4017d6
mov dword [ebp - 0x20], 0
cmp dword [ebp - 0x20], 0
jne 0x4017ee
push 0x408650
call dword [sym.imp.MSVCRT.dll_puts]
add esp, 4
xor eax, eax
jmp 0x401867
push 0x408688
mov ecx, dword [ebp - 4]
push ecx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094dc], eax
push 0x4086a0
mov edx, dword [ebp - 4]
push edx
call dword [sym.imp.KERNEL32.dll_GetProcAddress]
mov dword [0x4094cc], eax
cmp dword [0x4094dc], 0
je 0x401831
cmp dword [0x4094cc], 0
je 0x401831
mov dword [ebp - 0x24], 1
jmp 0x401838
mov dword [ebp - 0x24], 0
cmp dword [ebp - 0x24], 0
jne 0x401850
push 0x4086b8
call dword [sym.imp.MSVCRT.dll_puts]
add esp, 4
xor eax, eax
jmp 0x401867
jmp 0x401864
push 0x4086fc
call dword [sym.imp.MSVCRT.dll_puts]
add esp, 4
xor eax, eax
jmp 0x401867
mov eax, dword [ebp - 4]
mov esp, ebp
pop ebp
ret