Function at 0x7c3b80
Capabilities:
Resolve function by parsing pe exports

Disassembly:
push ebp
mov ebp, esp
push ebx
push edi
push esi
and esp, 0xfffffff8
sub esp, 0x2f8
mov esi, esp
mov ebx, dword [ebp + 0xc]
mov edi, dword [ebp + 8]
lea eax, [0x7f12d8]
mov dword [esi + 0x284], eax
mov al, byte [esi + 0xc4]
mov byte [esi + 0xdc], al
mov byte [esi + 0xc8], 0x1b
mov byte [esi + 0xc9], 0x61
mov byte [esi + 0xca], 7
mov byte [esi + 0xcb], 0x63
mov byte [esi + 0xcc], 0xed
mov byte [esi + 0xcd], 0x65
mov byte [esi + 0xce], 0x52
mov byte [esi + 0xcf], 0x67
mov byte [esi + 0xd0], 0x46
mov byte [esi + 0xd1], 0x79
mov byte [esi + 0xd2], 0x1e
mov byte [esi + 0xd3], 0x7b
mov byte [esi + 0xd4], 0x1e
mov byte [esi + 0xd5], 0x7d
mov byte [esi + 0xd6], 0x7e
mov byte [esi + 0xd7], 0x7f
mov eax, 0x10
mov byte [esi + eax + 0xc8], 0
add eax, 1
cmp eax, 0x11
jne 0x7c3c24
mov dword [esi + 8], 0
mov eax, dword [esi + 8]
cmp eax, 0x11
jae 0x7c3c76
mov eax, dword [esi + 8]
mov ecx, dword [esi + 8]
movzx ecx, byte [esi + ecx + 0xc8]
sub esp, 8
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.007c5940
add esp, 8
mov ecx, dword [esi + 8]
mov byte [esi + ecx + 0xc8], al
mov eax, dword [esi + 8]
inc eax
mov dword [esi + 8], eax
jmp 0x7c3c3b
lea eax, [esi + 0xc8]
sub esp, 0xc
mov dword [esp], edi
mov dword [esp + 4], ebx
mov dword [esp + 8], eax
call fcn.007be060
add esp, 0xc
and al, 1
movzx ebx, al
mov al, byte [esi + 0xc0]
mov byte [esi + 0xe0], al
mov byte [esi + 0x30], 0x69
mov byte [esi + 0x31], 7
mov byte [esi + 0x32], 0x69
mov byte [esi + 0x33], 1
mov byte [esi + 0x34], 0x72
mov byte [esi + 0x35], 3
mov byte [esi + 0x36], 0x7e
mov byte [esi + 0x37], 0xd
mov byte [esi + 0x38], 0x37
mov byte [esi + 0x39], 0xf
mov byte [esi + 0x3a], 0x38
mov byte [esi + 0x3b], 9
mov byte [esi + 0x3c], 0x64
mov byte [esi + 0x3d], 0xb
mov byte [esi + 0x3e], 0x68
mov byte [esi + 0x3f], 0x15
mov byte [esi + 0x40], 0x14
mov byte [esi + 0x41], 0x17
mov eax, 0x12
mov byte [esi + eax + 0x30], 0
add eax, 1
cmp eax, 0x14
jne 0x7c3cf0
mov dword [esi + 0xc], 0
mov eax, dword [esi + 0xc]
cmp eax, 0x14
jae 0x7c3d39
mov eax, dword [esi + 0xc]
mov ecx, dword [esi + 0xc]
movzx ecx, byte [esi + ecx + 0x30]
sub esp, 8
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.007c59c0
add esp, 8
mov ecx, dword [esi + 0xc]
mov byte [esi + ecx + 0x30], al
mov eax, dword [esi + 0xc]
inc eax
mov dword [esi + 0xc], eax
jmp 0x7c3d04
lea eax, [esi + 0x30]
sub esp, 0xc
mov dword [esp], edi
mov ecx, dword [ebp + 0xc]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.007be060
add esp, 0xc
and al, 1
movzx eax, al
or ebx, eax
cmp ebx, 0
setne bl
mov al, byte [esi + 0xbc]
mov byte [esi + 0xe4], al
mov byte [esi + 0x128], 0xe
mov byte [esi + 0x129], 0xeb
mov byte [esi + 0x12a], 0x1b
mov byte [esi + 0x12b], 0xe9
mov byte [esi + 0x12c], 0x1e
mov byte [esi + 0x12d], 0xef
mov byte [esi + 0x12e], 0x1d
mov byte [esi + 0x12f], 0xed
mov byte [esi + 0x130], 4
mov byte [esi + 0x131], 0xf3
mov byte [esi + 0x132], 0x1d
mov byte [esi + 0x133], 0xf1
mov byte [esi + 0x134], 5
mov byte [esi + 0x135], 0xf7
mov byte [esi + 0x136], 2
mov byte [esi + 0x137], 0xf5
mov byte [esi + 0x138], 5
mov byte [esi + 0x139], 0xfb
mov byte [esi + 0x13a], 0xc
mov byte [esi + 0x13b], 0xf9
mov byte [esi + 0x13c], 7
mov byte [esi + 0x13d], 0xff
mov byte [esi + 0x13e], 0xcc
mov byte [esi + 0x13f], 0xfd
mov byte [esi + 0x140], 9
mov byte [esi + 0x141], 0x83
mov byte [esi + 0x142], 0x75
mov byte [esi + 0x143], 0x81
mov byte [esi + 0x144], 0x6c
mov byte [esi + 0x145], 0x87
mov byte [esi + 0x146], 0x69
mov byte [esi + 0x147], 0x85
mov byte [esi + 0x148], 0x70
mov byte [esi + 0x149], 0x8b
mov byte [esi + 0x14a], 0x61
mov byte [esi + 0x14b], 0x89
mov byte [esi + 0x14c], 0x88
mov byte [esi + 0x14d], 0x8f
mov eax, 0x26
mov byte [esi + eax + 0x128], 0
add eax, 1
cmp eax, 0x2c
jne 0x7c3e7d
mov dword [esi + 0x10], 0
mov eax, dword [esi + 0x10]
cmp eax, 0x2c
jae 0x7c3ecf
mov eax, dword [esi + 0x10]
mov ecx, dword [esi + 0x10]
movzx ecx, byte [esi + ecx + 0x128]
sub esp, 8
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.007c5a30
add esp, 8
mov ecx, dword [esi + 0x10]
mov byte [esi + ecx + 0x128], al
mov eax, dword [esi + 0x10]
inc eax
mov dword [esi + 0x10], eax
jmp 0x7c3e94
lea eax, [esi + 0x128]
sub esp, 0xc
mov dword [esp], edi
mov ecx, dword [ebp + 0xc]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.007be060
add esp, 0xc
and al, 1
movzx ecx, al
and bl, 1
movzx eax, bl
mov edx, ecx
xor edx, 0xffffffff
mov ebx, eax
and ebx, edx
mov edx, eax
xor edx, ecx
add eax, edx
sub eax, ebx
cmp eax, 0
setne bl
mov al, byte [esi + 0xb8]
mov byte [esi + 0xe8], al
mov byte [esi + 0x154], 7
mov byte [esi + 0x155], 0x99
mov byte [esi + 0x156], 5
mov byte [esi + 0x157], 0x97
mov byte [esi + 0x158], 7
mov byte [esi + 0x159], 0x95
mov byte [esi + 0x15a], 5
mov byte [esi + 0x15b], 0x93
mov byte [esi + 0x15c], 9
mov byte [esi + 0x15d], 0x91
mov byte [esi + 0x15e], 0x13
mov byte [esi + 0x15f], 0x8f
mov byte [esi + 0x160], 3
mov byte [esi + 0x161], 0x8d
mov byte [esi + 0x162], 0xd8
mov byte [esi + 0x163], 0x8b
mov byte [esi + 0x164], 7
mov byte [esi + 0x165], 0x89
mov byte [esi + 0x166], 0x17
mov byte [esi + 0x167], 0x87
mov byte [esi + 0x168], 0x10
mov byte [esi + 0x169], 0x85
mov byte [esi + 0x16a], 0x1b
mov byte [esi + 0x16b], 0x83
mov byte [esi + 0x16c], 0xc
mov byte [esi + 0x16d], 0x81
mov byte [esi + 0x16e], 0x63
mov byte [esi + 0x16f], 0xff
mov byte [esi + 0x170], 0xfc
mov byte [esi + 0x171], 0xfd
mov eax, 0x1e
mov byte [esi + eax + 0x154], 0
add eax, 1
cmp eax, 0x24
jne 0x7c3ff3
mov dword [esi + 0x14], 0
mov eax, dword [esi + 0x14]
cmp eax, 0x24
jae 0x7c4045
mov eax, dword [esi + 0x14]
mov ecx, dword [esi + 0x14]
movzx ecx, byte [esi + ecx + 0x154]
sub esp, 8
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.007c5ab0
add esp, 8
mov ecx, dword [esi + 0x14]
mov byte [esi + ecx + 0x154], al
mov eax, dword [esi + 0x14]
inc eax
mov dword [esi + 0x14], eax
jmp 0x7c400a
lea eax, [esi + 0x154]
sub esp, 0xc
mov dword [esp], edi
mov ecx, dword [ebp + 0xc]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.007be060
add esp, 0xc
and al, 1
movzx ecx, al
and bl, 1
movzx eax, bl
mov edx, ecx
xor edx, 0xffffffff
mov ebx, eax
and ebx, edx
mov edx, eax
xor edx, ecx
add eax, edx
sub eax, ebx
cmp eax, 0
setne bl
mov al, byte [esi + 0x98]
mov byte [esi + 0xec], al
mov byte [esi + 0x9c], 0x88
mov byte [esi + 0x9d], 0x2b
mov byte [esi + 0x9e], 0x9b
mov byte [esi + 0x9f], 0x29
mov byte [esi + 0xa0], 0x81
mov byte [esi + 0xa1], 0x2f
mov byte [esi + 0xa2], 0x81
mov byte [esi + 0xa3], 0x2d
mov byte [esi + 0xa4], 0x9e
mov byte [esi + 0xa5], 0x33
mov byte [esi + 0xa6], 0x87
mov byte [esi + 0xa7], 0x31
mov byte [esi + 0xa8], 0xc2
mov byte [esi + 0xa9], 0x37
mov byte [esi + 0xaa], 0x98
mov byte [esi + 0xab], 0x35
mov byte [esi + 0xac], 0x81
mov byte [esi + 0xad], 0x3b
mov byte [esi + 0xae], 0x8b
mov byte [esi + 0xaf], 0x39
mov byte [esi + 0xb0], 0x8a
mov byte [esi + 0xb1], 0x3f
mov byte [esi + 0xb2], 0x3e
mov byte [esi + 0xb3], 0x3d
mov eax, 0x18
mov byte [esi + eax + 0x9c], 0
add eax, 1
cmp eax, 0x1c
jne 0x7c413f
mov dword [esi + 0x18], 0
mov eax, dword [esi + 0x18]
cmp eax, 0x1c
jae 0x7c4191
mov eax, dword [esi + 0x18]
mov ecx, dword [esi + 0x18]
movzx ecx, byte [esi + ecx + 0x9c]
sub esp, 8
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.007c5b30
add esp, 8
mov ecx, dword [esi + 0x18]
mov byte [esi + ecx + 0x9c], al
mov eax, dword [esi + 0x18]
inc eax
mov dword [esi + 0x18], eax
jmp 0x7c4156
lea eax, [esi + 0x9c]
sub esp, 0xc
mov dword [esp], edi
mov ecx, dword [ebp + 0xc]
mov dword [esp + 4], ecx
mov dword [esp + 8], eax
call fcn.007be060
add esp, 0xc
and al, 1
movzx ecx, al
and bl, 1
movzx edx, bl
mov eax, edx
xor eax, 0xffffffff
xor edx, 0xffffffff
or eax, edx
mov edx, ecx
xor edx, 0xffffffff
xor ecx, 0xffffffff
or edx, ecx
and eax, edx
xor eax, 0xffffffff
cmp eax, 0
setne bl
mov al, byte [esi + 0x74]
mov byte [esi + 0xf0], al
mov byte [esi + 0x78], 0x74
mov byte [esi + 0x79], 0xdb
mov byte [esi + 0x7a], 0x66
mov byte [esi + 0x7b], 0xd9
mov byte [esi + 0x7c], 0x7f
mov byte [esi + 0x7d], 0xdf
mov byte [esi + 0x7e], 0x7b
mov byte [esi + 0x7f], 0xdd
mov byte [esi + 0x80], 0x67
mov byte [esi + 0x81], 0xd3
mov byte [esi + 0x82], 0x67
mov byte [esi + 0x83], 0xd1
mov byte [esi + 0x84], 0x22
mov byte [esi + 0x85], 0xd7
mov byte [esi + 0x86], 0x63
mov byte [esi + 0x87], 0xd5
mov byte [esi + 0x88], 0x63
mov byte [esi + 0x89], 0xab
mov byte [esi + 0x8a], 0x16
mov byte [esi + 0x8b], 0xa9
mov byte [esi + 0x8c], 0x17
mov byte [esi + 0x8d], 0xaf
mov byte [esi + 0x8e], 0x1a
mov byte [esi + 0x8f], 0xad
mov byte [esi + 0x90], 0x17
mov byte [esi + 0x91], 0xa3
mov byte [esi + 0x92], 0xa2
mov byte [esi + 0x93], 0xa1
mov eax, 0x1c
mov byte [esi + eax + 0x78], 0
add eax, 1
cmp eax, 0x20
jne 0x7c4294
mov dword [esi + 0x1c], 0
mov eax, dword [esi + 0x1c]
cmp eax, 0x20
jae 0x7c42dd
mov eax, dword [esi + 0x1c]
mov ecx, dword [esi + 0x1c]
movzx ecx, byte [esi + ecx + 0x78]
sub esp, 8
mov dword [esp + 4], eax
mov dword [esp], ecx
call fcn.007c5bb0
add esp, 8
mov ecx, dword [esi + 0x1c]
mov byte [esi + ecx + 0x78], al
mov eax, dword [esi + 0x1c]
inc eax
mov dword [esi + 0x1c], eax
jmp 0x7c42a8
call fcn.007aec50
call fcn.007aec50
sub esp, 0xc
lea eax, [esi + 0x78]
mov dword [esp + 8], eax
mov eax, dword [ebp + 0xc]
mov dword [esp + 4], eax
mov dword [esp], edi
call fcn.007be060
add esp, 0xc
or bl, al
and bl, 1
mov byte [esi + 3], bl
xor eax, eax
cmp dword [ebp + 0x10], 0
sete al
mov dword [esi + 0x280], eax
mov eax, dword [esi + 0x284]
mov ecx, dword [esi + 0x280]
mov ecx, dword [eax + ecx*4]
push eax
mov eax, esp
mov dword [esi + 0x1ac], eax
mov dword [eax], 0x7f1190
push eax
mov edx, esp
mov dword [edx], 0x2a
push eax
mov eax, esp
mov dword [esi + 0x1b4], eax
mov dword [eax], 0x7f12e0
push eax
mov dword [esi + 0x1b0], esp
push eax
mov eax, esp
mov dword [esi + 0x1bc], eax
mov dword [eax], 0x7f12e8
push eax
mov dword [esi + 0x1b8], esp
push eax
mov eax, esp
mov dword [esi + 0x1c4], eax
mov dword [eax], 0x7f12f0
push eax
mov dword [esi + 0x1c0], esp
push eax
mov eax, esp
mov dword [esi + 0x1d4], eax
mov dword [eax], 0x7f12f8
push eax
mov dword [esi + 0x1cc], esp
push eax
mov eax, esp
mov dword [esi + 0x1d0], eax
mov dword [eax], 0x7f1190
push eax
mov eax, esp
mov dword [esi + 0x1c8], eax
mov dword [eax], 0x16
push eax
mov edi, esp
mov dword [esi + 0x27c], edi
mov dword [edi], 0x7f1300
push eax
mov dword [esi + 0x26c], esp
push eax
mov edi, esp
mov dword [esi + 0x25c], edi
mov dword [edi], 0x7f1190
push eax
mov edi, esp
mov dword [esi + 0x244], edi
mov dword [edi], 0x1e
push eax
mov edi, esp
mov dword [esi + 0x240], edi
mov dword [edi], 0x7f1308
push eax
mov dword [esi + 0x23c], esp
push eax
mov edi, esp
mov dword [esi + 0x238], edi
mov dword [edi], 0x7f1190
push eax
mov edi, esp
mov dword [esi + 0x234], edi
mov dword [edi], 0x1d
push eax
mov edi, esp
mov dword [esi + 0x230], edi
mov dword [edi], 0x7f1310
push eax
mov dword [esi + 0x22c], esp
push eax
mov edi, esp
mov dword [esi + 0x228], edi
mov dword [edi], 0x7f1190
push eax
mov edi, esp
mov dword [esi + 0x224], edi
mov dword [edi], 0x1c
push eax
mov eax, esp
mov dword [esi + 0x21c], eax
mov dword [eax], 0x7f1190
push eax
mov eax, esp
mov dword [esi + 0x218], eax
mov dword [eax], 0x1d
push eax
mov eax, esp
mov dword [esi + 0x210], eax
mov dword [eax], 0x7f1190
push eax
mov eax, esp
mov dword [esi + 0x208], eax
mov dword [eax], 0x16
push eax
mov eax, esp
mov dword [esi + 0x20c], eax
mov dword [eax], 0x7f1190
push eax
mov eax, esp
mov dword [esi + 0x1fc], eax
mov dword [eax], 0x1f
push eax
mov eax, esp
mov dword [esi + 0x204], eax
mov dword [eax], 0x7f1318
push eax
mov dword [esi + 0x1f0], esp
push eax
mov eax, esp
mov dword [esi + 0x200], eax
mov dword [eax], 0x7f1190
push eax
mov eax, esp
mov dword [esi + 0x1e8], eax
mov dword [eax], 0x21
push eax
mov eax, esp
mov dword [esi + 0x1f4], eax
mov dword [eax], 0x7f1320
push eax
mov dword [esi + 0x1e4], esp
push eax
mov eax, esp
mov dword [esi + 0x180], eax
mov dword [eax], 0x7f1328
push eax
mov dword [esi + 0x1f8], esp
push eax
mov eax, esp
mov dword [esi + 0x1ec], eax
mov dword [eax], 0x7f1190
push eax
mov eax, esp
mov dword [esi + 0x1e0], eax
mov dword [eax], 0x24
push eax
mov edi, esp
mov dword [esi + 0x274], edi
mov dword [edi], 0x7f1190
push eax
mov edi, esp
mov dword [esi + 0x254], edi
mov dword [edi], 0x25
push eax
mov edi, esp
mov dword [esi + 0x268], edi
mov dword [edi], 0x7f1330
push eax
mov dword [esi + 0x250], esp
push eax
mov edi, esp
mov dword [edi], 0x7f1338
push eax
mov dword [esi + 0x270], esp
push eax
mov ebx, esp
mov dword [esi + 0x264], ebx
mov dword [ebx], 0x7f1340
push eax
mov dword [esi + 0x24c], esp
push eax
mov ebx, esp
mov dword [esi + 0x260], ebx
mov dword [ebx], 0x7f1190
push eax
mov ebx, esp
mov dword [esi + 0x248], ebx
mov dword [ebx], 0x29
push eax
mov ebx, esp
mov dword [esi + 0x278], ebx
mov dword [ebx], 0x7f1190
push eax
mov ebx, esp
mov dword [ebx], 0x2a
push eax
mov eax, esp
mov dword [esi + 0x1dc], eax
mov dword [eax], 0x7f1190
push eax
mov eax, esp
mov dword [esi + 0x1d8], eax
mov dword [eax], 0x22
push eax
mov eax, esp
mov dword [esi + 0x220], eax
mov dword [eax], 0x7f1190
push eax
mov eax, esp
mov dword [eax], 0x26
jmp ecx