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

Disassembly:
sub esp, 0x24
push ebx
push ebp
mov ebp, dword [esp + 0x30]
push esi
mov esi, ecx
push edi
cmp byte [ebp + 0x2c], 0
lea ebx, [ebp + 4]
mov dword [esp + 0x1c], esi
lea edi, [ebp + 0x18]
mov dword [esp + 0x10], ebx
jne 0x41bb05
lea eax, [ebp + 0x30]
mov byte [ebp + 0x2c], 1
push eax
push edi
push ebx
call fcn.00419a3b
test al, al
je 0x41bb14
jmp 0x41bb09
mov dword [esp + 0x10], ebx
mov eax, dword [ebp + 0x24]
mov ecx, dword [edi]
add eax, ecx
cmp dword [ebx], eax
jle 0x41bb22
mov byte [ebp + 0x2cd0], 1
xor al, al
jmp 0x41c579
mov eax, dword [ebp + 0x20]
dec eax
add ecx, eax
mov eax, dword [ebp + 0x2ccc]
sub eax, 0x10
mov dword [esp + 0x20], ecx
mov dword [esp + 0x24], eax
cmp ecx, eax
jge 0x41bb43
mov dword [esp + 0x18], ecx
jmp 0x41bb51
mov dword [esp + 0x18], eax
jmp 0x41bb51
mov ebp, dword [esp + 0x38]
mov ebx, dword [esp + 0x10]
mov ecx, dword [esi + 0x78]
mov edi, dword [esi + 0xb0d0]
cmp ecx, edi
jb 0x41bb60
sub ecx, edi
cmp dword [esi + 0x7c], ecx
mov dword [esi + 0x78], ecx
seta al
mov dword [esi + 0x7c], ecx
or byte [esi + 0x80], al
mov edx, dword [ebx]
cmp edx, dword [esp + 0x18]
jl 0x41bbb1
cmp edx, dword [esp + 0x20]
jg 0x41c577
jne 0x41bb92
mov eax, dword [ebp + 8]
cmp eax, dword [ebp + 0x1c]
jge 0x41c577
cmp edx, dword [esp + 0x24]
jl 0x41bba5
cmp byte [ebp + 0x2cd2], 0
je 0x41c570
cmp edx, dword [ebp + 0x2ccc]
jge 0x41c570
mov edx, dword [esi + 0x2d40]
mov eax, edx
sub eax, ecx
cmp eax, edi
jb 0x41bbc1
add eax, edi
cmp eax, 0x1004
ja 0x41bbf9
cmp edx, ecx
je 0x41bbf9
mov ecx, esi
call fcn.0041a085
mov eax, dword [esi + 0x2e64]
cmp eax, dword [esi + 0x2e54]
jg 0x41bb1b
jl 0x41bbf9
mov eax, dword [esi + 0x2e60]
cmp eax, dword [esi + 0x2e50]
ja 0x41bb1b
mov ecx, ebx
call fcn.0040f0f9
mov edx, eax
mov eax, dword [ebp + 0xb4]
and edx, 0xfffe
cmp edx, dword [ebp + eax*4 + 0x34]
jae 0x41bc46
push 0x10
pop ecx
sub ecx, eax
shr edx, cl
movzx ecx, byte [edx + ebp + 0xb8]
add ecx, dword [ebx + 4]
mov eax, ecx
shr eax, 3
add dword [ebx], eax
and ecx, 7
mov dword [ebx + 4], ecx
movzx eax, word [ebp + edx*2 + 0x2b8]
jmp 0x41bc9a
mov ebp, dword [esp + 0x38]
jmp 0x41bb51
push 0xf
pop edi
inc eax
cmp eax, edi
jae 0x41bc68
lea ecx, [eax*4 + 0x34]
add ecx, ebp
cmp edx, dword [ecx]
jb 0x41bc66
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41bc57
jmp 0x41bc68
mov edi, eax
mov ecx, dword [ebx + 4]
add ecx, edi
mov eax, ecx
and ecx, 7
mov dword [ebx + 4], ecx
shr eax, 3
add dword [ebx], eax
sub edx, dword [ebp + edi*4 + 0x30]
push 0x10
pop ecx
sub ecx, edi
shr edx, cl
mov ecx, dword [ebp + edi*4 + 0x74]
add ecx, edx
cmp ecx, dword [ebp + 0x30]
sbb eax, eax
and eax, ecx
movzx eax, word [ebp + eax*2 + 0x6b8]
movzx edx, ax
cmp edx, 0x100
jae 0x41bcb9
mov eax, dword [esi + 0x78]
mov ecx, dword [esi + 0x2d44]
mov byte [ecx + eax], dl
inc dword [esi + 0x78]
jmp 0x41bb51
cmp edx, 0x106
jb 0x41c151
lea edi, [edx - 0x106]
cmp edi, 8
jae 0x41bcd5
add edi, 2
jmp 0x41bd1e
mov ebx, edi
and edi, 3
shr ebx, 2
or edi, 4
dec ebx
mov ecx, ebx
shl edi, cl
add edi, 2
test ebx, ebx
je 0x41bd1a
mov ecx, dword [esp + 0x10]
call fcn.0040f0f9
push 0x10
pop ecx
sub ecx, ebx
shr eax, cl
add edi, eax
mov eax, dword [esp + 0x10]
mov ecx, dword [eax + 4]
add ecx, ebx
mov ebx, dword [esp + 0x10]
mov eax, ecx
shr eax, 3
add dword [ebx], eax
and ecx, 7
mov dword [ebx + 4], ecx
jmp 0x41bd1e
mov ebx, dword [esp + 0x10]
mov ecx, ebx
call fcn.0040f0f9
mov edx, eax
mov eax, dword [ebp + 0x9a0]
and edx, 0xfffe
cmp edx, dword [ebp + eax*4 + 0x920]
jae 0x41bd65
push 0x10
pop ecx
sub ecx, eax
shr edx, cl
movzx ecx, byte [edx + ebp + 0x9a4]
add ecx, dword [ebx + 4]
mov eax, ecx
shr eax, 3
add dword [ebx], eax
and ecx, 7
mov dword [ebx + 4], ecx
movzx eax, word [ebp + edx*2 + 0xba4]
jmp 0x41bdd1
push 0xf
pop ebx
inc eax
cmp eax, ebx
jae 0x41bd87
lea ecx, [eax*4 + 0x920]
add ecx, ebp
cmp edx, dword [ecx]
jb 0x41bd85
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41bd76
jmp 0x41bd87
mov ebx, eax
mov eax, dword [esp + 0x10]
mov ebp, dword [esp + 0x10]
push 0x10
mov ecx, dword [eax + 4]
add ecx, ebx
mov eax, ecx
and ecx, 7
shr eax, 3
add dword [ebp], eax
mov eax, ebp
mov ebp, dword [esp + 0x3c]
mov dword [eax + 4], ecx
sub edx, dword [ebp + ebx*4 + 0x91c]
pop ecx
sub ecx, ebx
shr edx, cl
mov ecx, dword [ebp + ebx*4 + 0x960]
add ecx, edx
cmp ecx, dword [ebp + 0x91c]
sbb eax, eax
and eax, ecx
movzx eax, word [ebp + eax*2 + 0xfa4]
movzx eax, ax
cmp eax, 4
jae 0x41bde1
lea ebx, [eax + 1]
jmp 0x41bf73
mov ebp, eax
and eax, 1
shr ebp, 1
or eax, 2
dec ebp
mov ecx, ebp
shl eax, cl
inc eax
mov dword [esp + 0x14], eax
mov ebx, eax
test ebp, ebp
je 0x41bf73
cmp ebp, 4
jb 0x41bf47
jbe 0x41be4f
mov ecx, dword [esp + 0x38]
add ecx, 4
cmp ebp, 0x24
jbe 0x41be1f
call fcn.0041c5b2
push 0x44
jmp 0x41be26
call fcn.0041c583
push 0x24
mov edx, dword [esp + 0x14]
mov ebx, eax
pop ecx
sub ecx, ebp
shr ebx, cl
mov ecx, dword [edx + 4]
add ecx, 0xfffffffc
shl ebx, 4
add ebx, dword [esp + 0x14]
add ecx, ebp
mov eax, ecx
shr eax, 3
add dword [edx], eax
and ecx, 7
mov dword [edx + 4], ecx
jmp 0x41be53
mov edx, dword [esp + 0x10]
mov ecx, edx
call fcn.0040f0f9
mov ecx, dword [esp + 0x38]
mov edx, eax
and edx, 0xfffe
mov eax, dword [ecx + 0x128c]
cmp edx, dword [ecx + eax*4 + 0x120c]
jae 0x41beb3
mov esi, dword [esp + 0x10]
push 0x10
pop ecx
sub ecx, eax
mov eax, dword [esp + 0x38]
shr edx, cl
movzx ecx, byte [edx + eax + 0x1290]
mov eax, dword [esp + 0x10]
add ecx, dword [eax + 4]
mov eax, ecx
shr eax, 3
add dword [esi], eax
mov eax, esi
and ecx, 7
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x38]
movzx eax, word [eax + edx*2 + 0x1490]
jmp 0x41bf34
inc eax
mov dword [esp + 0x14], 0xf
cmp eax, 0xf
jae 0x41bedd
lea ecx, [ecx + eax*4]
add ecx, 0x120c
cmp edx, dword [ecx]
jb 0x41bed9
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41beca
jmp 0x41bedd
mov dword [esp + 0x14], eax
mov eax, dword [esp + 0x10]
mov esi, dword [esp + 0x10]
push 0x10
mov ecx, dword [eax + 4]
add ecx, dword [esp + 0x18]
mov eax, ecx
and ecx, 7
shr eax, 3
add dword [esi], eax
mov eax, esi
mov dword [eax + 4], ecx
mov eax, dword [esp + 0x18]
mov ecx, dword [esp + 0x3c]
sub edx, dword [ecx + eax*4 + 0x1208]
pop ecx
sub ecx, eax
shr edx, cl
mov ecx, dword [esp + 0x38]
mov ecx, dword [ecx + eax*4 + 0x124c]
add ecx, edx
mov edx, dword [esp + 0x38]
cmp ecx, dword [edx + 0x1208]
sbb eax, eax
and eax, ecx
movzx eax, word [edx + eax*2 + 0x1890]
mov esi, dword [esp + 0x1c]
movzx eax, ax
add ebx, eax
cmp ebp, 0x1e
jb 0x41bf73
or ebx, 0xffffffff
jmp 0x41bf73
mov ecx, dword [esp + 0x10]
call fcn.0041c583
mov edx, dword [esp + 0x10]
mov ebx, eax
push 0x20
pop ecx
sub ecx, ebp
shr ebx, cl
mov ecx, dword [edx + 4]
add ebx, dword [esp + 0x14]
add ecx, ebp
mov eax, ecx
shr eax, 3
add dword [edx], eax
and ecx, 7
mov dword [edx + 4], ecx
cmp ebx, 0x100
jbe 0x41bf8e
inc edi
cmp ebx, 0x2000
jbe 0x41bf8e
inc edi
cmp ebx, 0x40000
jbe 0x41bf8e
inc edi
mov eax, dword [esi + 0x64]
mov dword [esi + 0x68], eax
mov eax, dword [esi + 0x60]
mov dword [esi + 0x64], eax
mov eax, dword [esi + 0x5c]
mov dword [esi + 0x60], eax
mov dword [esi + 0x5c], ebx
mov edx, dword [esi + 0x78]
mov ebp, edx
sub ebp, ebx
mov dword [esi + 0x70], edi
cmp ebx, edx
jbe 0x41bffd
mov eax, dword [esi + 0xb0d0]
add ebp, eax
cmp ebx, eax
ja 0x41bfc6
cmp byte [esi + 0x80], 0
jne 0x41bffd
mov ebp, dword [esp + 0x38]
mov ebx, dword [esp + 0x10]
test edi, edi
je 0x41bb51
mov eax, dword [esi + 0x2d44]
dec edi
mov byte [edx + eax], 0
mov edx, dword [esi + 0x78]
mov eax, dword [esi + 0xb0d0]
inc edx
cmp edx, eax
jb 0x41bff1
sub edx, eax
mov dword [esi + 0x78], edx
test edi, edi
jne 0x41bfd6
jmp 0x41bb4d
mov eax, dword [esi + 0xb0d0]
lea ecx, [eax - 0x1004]
cmp ebp, ecx
jae 0x41c113
cmp edx, ecx
jae 0x41c113
mov eax, dword [esi + 0x2d44]
add ebp, eax
lea ecx, [eax + edx]
mov dword [esp + 0x14], ecx
lea eax, [edx + edi]
mov dword [esi + 0x78], eax
cmp edi, 8
jb 0x41c0a3
cmp ebx, edi
jae 0x41c07b
mov edx, edi
shr edx, 3
mov al, byte [ebp]
sub edi, 8
mov byte [ecx], al
mov al, byte [ebp + 1]
mov byte [ecx + 1], al
mov al, byte [ebp + 2]
mov byte [ecx + 2], al
mov al, byte [ebp + 3]
mov byte [ecx + 3], al
mov al, byte [ebp + 4]
mov byte [ecx + 4], al
mov al, byte [ebp + 5]
mov byte [ecx + 5], al
mov al, byte [ebp + 6]
mov byte [ecx + 6], al
mov al, byte [ebp + 7]
add ebp, 8
mov byte [ecx + 7], al
add ecx, 8
sub edx, 1
jne 0x41c03c
jmp 0x41c0a3
mov ebx, edi
shr ebx, 3
mov edx, dword [esp + 0x14]
sub edi, 8
mov ecx, dword [ebp + 4]
mov eax, dword [ebp]
add ebp, 8
mov dword [edx + 4], ecx
mov ecx, edx
add ecx, 8
mov dword [edx], eax
mov dword [esp + 0x14], ecx
sub ebx, 1
jne 0x41c080
mov ebx, dword [esp + 0x10]
test edi, edi
je 0x41bc3d
mov al, byte [ebp]
mov byte [ecx], al
cmp edi, 1
jbe 0x41bc3d
mov al, byte [ebp + 1]
mov byte [ecx + 1], al
cmp edi, 2
jbe 0x41bc3d
mov al, byte [ebp + 2]
mov byte [ecx + 2], al
cmp edi, 3
jbe 0x41bc3d
mov al, byte [ebp + 3]
mov byte [ecx + 3], al
cmp edi, 4
jbe 0x41bc3d
mov al, byte [ebp + 4]
mov byte [ecx + 4], al
cmp edi, 5
jbe 0x41bc3d
mov al, byte [ebp + 5]
mov byte [ecx + 5], al
cmp edi, 6
jbe 0x41bc3d
mov al, byte [ebp + 6]
mov byte [ecx + 6], al
jmp 0x41bb49
mov ebx, dword [esp + 0x10]
test edi, edi
je 0x41bc3d
dec edi
mov ebx, ebp
cmp ebp, eax
jb 0x41c128
sub ebx, eax
mov ecx, dword [esi + 0x2d44]
inc ebp
mov al, byte [ebx + ecx]
mov byte [edx + ecx], al
mov edx, dword [esi + 0x78]
mov eax, dword [esi + 0xb0d0]
inc edx
cmp edx, eax
jb 0x41c145
sub edx, eax
mov dword [esi + 0x78], edx
test edi, edi
jne 0x41c11f
jmp 0x41bb49
cmp edx, 0x100
jne 0x41c187
lea eax, [esp + 0x28]
mov ecx, esi
push eax
push ebx
call fcn.00419953
test al, al
je 0x41c577
lea eax, [esp + 0x28]
mov ecx, esi
push eax
call fcn.00418a06
test al, al
jne 0x41bb51
jmp 0x41c577
cmp edx, 0x101
jne 0x41c31e
mov edi, dword [esi + 0x70]
test edi, edi
je 0x41bb51
mov edx, dword [esi + 0x78]
mov ebx, edx
mov ecx, dword [esi + 0x5c]
sub ebx, ecx
cmp ecx, edx
jbe 0x41c1e8
mov eax, dword [esi + 0xb0d0]
add ebx, eax
cmp ecx, eax
ja 0x41c1c1
cmp byte [esi + 0x80], 0
jne 0x41c1e8
mov eax, dword [esi + 0x2d44]
dec edi
mov byte [edx + eax], 0
mov edx, dword [esi + 0x78]
mov eax, dword [esi + 0xb0d0]
inc edx
cmp edx, eax
jb 0x41c1dc
sub edx, eax
mov dword [esi + 0x78], edx
test edi, edi
jne 0x41c1c1
jmp 0x41bb4d
mov eax, dword [esi + 0xb0d0]
lea ebp, [eax - 0x1004]
cmp ebx, ebp
jae 0x41c2ec
cmp edx, ebp
jae 0x41c2ec
mov eax, dword [esi + 0x2d44]
add ebx, eax
lea ebp, [eax + edx]
lea eax, [edi + edx]
mov dword [esi + 0x78], eax
cmp edi, 8
jb 0x41c280
cmp ecx, edi
jae 0x41c262
mov ecx, edi
shr ecx, 3
mov al, byte [ebx]
sub edi, 8
mov byte [ebp], al
mov al, byte [ebx + 1]
mov byte [ebp + 1], al
mov al, byte [ebx + 2]
mov byte [ebp + 2], al
mov al, byte [ebx + 3]
mov byte [ebp + 3], al
mov al, byte [ebx + 4]
mov byte [ebp + 4], al
mov al, byte [ebx + 5]
mov byte [ebp + 5], al
mov al, byte [ebx + 6]
mov byte [ebp + 6], al
mov al, byte [ebx + 7]
add ebx, 8
mov byte [ebp + 7], al
add ebp, 8
sub ecx, 1
jne 0x41c223
jmp 0x41c280
mov edx, edi
shr edx, 3
mov eax, dword [ebx]
sub edi, 8
mov ecx, dword [ebx + 4]
add ebx, 8
mov dword [ebp], eax
mov dword [ebp + 4], ecx
add ebp, 8
sub edx, 1
jne 0x41c267
test edi, edi
je 0x41bb49
mov al, byte [ebx]
mov byte [ebp], al
cmp edi, 1
jbe 0x41bb49
mov al, byte [ebx + 1]
mov byte [ebp + 1], al
cmp edi, 2
jbe 0x41bb49
mov al, byte [ebx + 2]
mov byte [ebp + 2], al
cmp edi, 3
jbe 0x41bb49
mov al, byte [ebx + 3]
mov byte [ebp + 3], al
cmp edi, 4
jbe 0x41bb49
mov al, byte [ebx + 4]
mov byte [ebp + 4], al
cmp edi, 5
jbe 0x41bb49
mov al, byte [ebx + 5]
mov byte [ebp + 5], al
cmp edi, 6
jbe 0x41bb49
mov al, byte [ebx + 6]
mov byte [ebp + 6], al
jmp 0x41bb49
dec edi
mov ebp, ebx
cmp ebx, eax
jb 0x41c2f5
sub ebp, eax
mov ecx, dword [esi + 0x2d44]
inc ebx
mov al, byte [ecx + ebp]
mov byte [edx + ecx], al
mov edx, dword [esi + 0x78]
mov eax, dword [esi + 0xb0d0]
inc edx
cmp edx, eax
jb 0x41c312
sub edx, eax
mov dword [esi + 0x78], edx
test edi, edi
jne 0x41c2ec
jmp 0x41bb49
add edx, 0xfffffefe
lea ecx, [edx + 0x17]
lea ecx, [esi + ecx*4]
mov ebx, dword [ecx]
mov dword [esp + 0x14], ebx
je 0x41c33f
mov eax, dword [ecx - 4]
mov dword [ecx], eax
lea ecx, [ecx - 4]
sub edx, 1
jne 0x41c332
mov dword [esi + 0x5c], ebx
mov ebx, dword [esp + 0x10]
mov ecx, ebx
call fcn.0040f0f9
mov edx, eax
mov eax, dword [ebp + 0x1b78]
and edx, 0xfffe
cmp edx, dword [ebp + eax*4 + 0x1af8]
jae 0x41c38d
push 0x10
pop ecx
sub ecx, eax
shr edx, cl
movzx ecx, byte [edx + ebp + 0x1b7c]
add ecx, dword [ebx + 4]
mov eax, ecx
shr eax, 3
add dword [ebx], eax
and ecx, 7
mov dword [ebx + 4], ecx
movzx eax, word [ebp + edx*2 + 0x1d7c]
jmp 0x41c3ea
push 0xf
pop edi
inc eax
cmp eax, edi
jae 0x41c3af
lea ecx, [eax*4 + 0x1af8]
add ecx, ebp
cmp edx, dword [ecx]
jb 0x41c3ad
inc eax
add ecx, 4
cmp eax, 0xf
jb 0x41c39e
jmp 0x41c3af
mov edi, eax
mov ecx, dword [ebx + 4]
add ecx, edi
mov eax, ecx
and ecx, 7
mov dword [ebx + 4], ecx
shr eax, 3
add dword [ebx], eax
sub edx, dword [ebp + edi*4 + 0x1af4]
push 0x10
pop ecx
sub ecx, edi
shr edx, cl
mov ecx, dword [ebp + edi*4 + 0x1b38]
add ecx, edx
cmp ecx, dword [ebp + 0x1af4]
sbb eax, eax
and eax, ecx
movzx eax, word [ebp + eax*2 + 0x217c]
movzx edi, ax
cmp edi, 8
jae 0x41c3f7
add edi, 2
jmp 0x41c436
mov ebx, edi
and edi, 3
shr ebx, 2
or edi, 4
dec ebx
mov ecx, ebx
shl edi, cl
add edi, 2
test ebx, ebx
je 0x41c436
mov ecx, dword [esp + 0x10]
call fcn.0040f0f9
mov edx, dword [esp + 0x10]
push 0x10
pop ecx
sub ecx, ebx
shr eax, cl
mov ecx, dword [edx + 4]
add edi, eax
add ecx, ebx
mov eax, ecx
shr eax, 3
add dword [edx], eax
and ecx, 7
mov dword [edx + 4], ecx
mov edx, dword [esi + 0x78]
mov ebx, edx
mov ecx, dword [esp + 0x14]
sub ebx, ecx
mov dword [esi + 0x70], edi
cmp ecx, edx
jbe 0x41c490
mov eax, dword [esi + 0xb0d0]
add ebx, eax
cmp ecx, eax
ja 0x41c45d
cmp byte [esi + 0x80], 0
jne 0x41c490
mov ebx, dword [esp + 0x10]
test edi, edi
je 0x41bb51
mov eax, dword [esi + 0x2d44]
dec edi
mov byte [edx + eax], 0
mov edx, dword [esi + 0x78]
mov eax, dword [esi + 0xb0d0]
inc edx
cmp edx, eax
jb 0x41c484
sub edx, eax
mov dword [esi + 0x78], edx
test edi, edi
jne 0x41c469
jmp 0x41bb4d
mov eax, dword [esi + 0xb0d0]
lea ecx, [eax - 0x1004]
cmp ebx, ecx
jae 0x41c536
cmp edx, ecx
jae 0x41c536
mov eax, dword [esi + 0x2d44]
add ebx, eax
lea ebp, [eax + edx]
lea eax, [edi + edx]
mov dword [esi + 0x78], eax
cmp edi, 8
jb 0x41c280
cmp dword [esp + 0x14], edi
jae 0x41c513
mov ecx, edi
shr ecx, 3
mov al, byte [ebx]
sub edi, 8
mov byte [ebp], al
mov al, byte [ebx + 1]
mov byte [ebp + 1], al
mov al, byte [ebx + 2]
mov byte [ebp + 2], al
mov al, byte [ebx + 3]
mov byte [ebp + 3], al
mov al, byte [ebx + 4]
mov byte [ebp + 4], al
mov al, byte [ebx + 5]
mov byte [ebp + 5], al
mov al, byte [ebx + 6]
mov byte [ebp + 6], al
mov al, byte [ebx + 7]
add ebx, 8
mov byte [ebp + 7], al
add ebp, 8
sub ecx, 1
jne 0x41c4d1
jmp 0x41c280
mov edx, edi
shr edx, 3
mov eax, dword [ebx]
sub edi, 8
mov ecx, dword [ebx + 4]
add ebx, 8
mov dword [ebp], eax
mov dword [ebp + 4], ecx
add ebp, 8
sub edx, 1
jne 0x41c518
jmp 0x41c280
test edi, edi
je 0x41bb4d
dec edi
mov ebp, ebx
cmp ebx, eax
jb 0x41c547
sub ebp, eax
mov ecx, dword [esi + 0x2d44]
inc ebx
mov al, byte [ecx + ebp]
mov byte [edx + ecx], al
mov edx, dword [esi + 0x78]
mov eax, dword [esi + 0xb0d0]
inc edx
cmp edx, eax
jb 0x41c564
sub edx, eax
mov dword [esi + 0x78], edx
test edi, edi
jne 0x41c53e
jmp 0x41bb49
mov byte [ebp + 0x2cd3], 1
mov al, 1
pop edi
pop esi
pop ebp
pop ebx
add esp, 0x24
ret 4